X를 사용자로 시작하고에서 키보드 밝기를 설정해야합니다 /sys/class/leds/asus\:\:kbd_backlight/brightness
. /sys/
권한이 너무 재설정 할 수 있도록 디렉토리, 재부팅 후 다시됩니다. 부팅 할 때마다 모든 사용자가 파일을 쓸 수 있도록 설정하지 않으려면 어떻게 설정합니까?
SDDM과 함께 로그인 관리자로 Archlinux를 사용하고 KDE를 DE로 사용하고 있습니다.
X를 사용자로 시작하고에서 키보드 밝기를 설정해야합니다 /sys/class/leds/asus\:\:kbd_backlight/brightness
. /sys/
권한이 너무 재설정 할 수 있도록 디렉토리, 재부팅 후 다시됩니다. 부팅 할 때마다 모든 사용자가 파일을 쓸 수 있도록 설정하지 않으려면 어떻게 설정합니까?
SDDM과 함께 로그인 관리자로 Archlinux를 사용하고 KDE를 DE로 사용하고 있습니다.
답변:
sysfs의 권한은 커널 공간에 정의되어 있으며 사용자 공간 도구를 사용하여 변경할 수 없습니다 (커널 측 지원이없는 한).
그러나 자신의 문제에 대해 모든 사람이 해당 경로에 쓸 수 있도록 sudo 항목을 설정할 수 있습니다. ALL ALL = (ALL) NOPASSWD: /usr/bin/tee /sys/class/leds/asus\:\:kbd_backlight/brightness
해당 디렉토리에 쓸 때는 다음과 같은 스크립트를 사용하십시오. echo 1 | sudo /usr/bin/tee "/sys/class/leds/asus::kbd_backlight/brightness"
/sys/devices/platform/sony-laptop/kbd_backlight
하고 키보드 백라이트를 제어 하기 위해 파일을 만들려고합니다 . 코드에서 경로를 변경하여이 오류가 발생했습니다. bash: syntax error near unexpected token
( '`입력 한 명령은 ALL ALL = (ALL) NOPASSWD: /usr/bin/tee /sys/devices/platform/sony-laptop/kbd_backlight
제발 도와주세요
/usr/bin/tee
와 사이에 쉼표를 추가 할 때까지 우분투 컴퓨터 에서이 작업을 수행 할 수 없었습니다 /sys/class...
. 문법을 간단히 살펴본 후 man sudoers
쉼표가 필요한 것 같습니다.
비슷한 문제가 있었으므로 노드 서비스를 실행하기 전에 권한을 설정해야했습니다. goldilocks의 의견에 따라이 시스템 스크립트를 작성했습니다.
$ cat /etc/systemd/system/setledspermissions.service
[Unit]
Description=Set leds writable to everybody
Before=nodered.service
[Service]
Type=oneshot
User=root
ExecStart=/bin/bash -c "/bin/chmod a+w /sys/class/leds/led0/*"
[Install]
WantedBy=multi-user.target
서비스 파일을 작성한 후
$ sudo systemctl enable setledspermissions.service
$ sudo systemctl start setledspermissions.service
$ sudo systemctl status setledspermissions.service