재부팅 후 스크립트를 사용하여/sys/에 쓰는 방법은 무엇입니까? (스도)

재부팅 후 스크립트를 사용하여/sys/에 쓰는 방법은 무엇입니까? (스도)

나는 내가 쓴 대본을 쓰고 /sys/class/backlight/intel_backlight/brightness읽으 려고 노력하고 있다. /sys/class/backlight/intel_backlight/max_brightness문제는 루트가 필요하고 루트 를 chown해도 chmod재부팅 후 권한이 재설정된다는 점입니다.

다음과 같은 내용을 추가하는 솔루션을 보았습니다.

user ALL = NOPASSWD: /sys/class/backlight/intel_backlight/brightness

사용했지만 visudo작동하지 않습니다. 다른 어떤 옵션이 있나요?

답변1

의 파일은 /sys디스크의 실제 파일이 아닙니다. 이는 활성 커널의 정보에 액세스할 수 있게 해주는 가상 파일입니다. 발견한 바와 같이 실제 영향은 실행 chownchmod이 수명이 짧다는 것입니다. 전체 파일 시스템 보기는 /sys시스템 시작 시 커널에 의해 생성되므로 지속적으로 변경할 수 없습니다.

가장 간단한 해결책은 다음을 실행하는 것입니다.스크립트루트로. 사용하는 sudo것이 일반적인 솔루션입니다. 사용자가 루트로 스크립트를 실행할 수 있도록 해야 합니다. 예를 들어 스크립트가 로 설치된 경우 다음을 사용하여 스크립트를 만들 /usr/local/bin/configure-brightness수 있습니다 /etc/sudoers.d/brightness.

yourusername ALL=(ALL) NOPASSWD:/usr/local/bin/configure-brightness

파일( /etc/sudoers.d/brightness)은 에 속 root하고 해당 스키마를 가지고 있어야 합니다 440.

이 구성을 완료한 후 다음을 실행할 수 있습니다.

sudo /usr/local/bin/configure-brightness

...그리고 스크립트는 다음과 같이 실행됩니다 root. 이는 읽기/쓰기가 가능함을 의미합니다 /sys.

관련 정보