Я хотел бы запустить скрипт для отключения подсветки клавиатуры на моем Asus при входе в систему ( этот ответ не работал). До введения systemd
в Ubuntu 15.04 я делал это через /etc/rc.local
, используя команду (sleep 10 && echo 0 > /sys/class/leds/asus::kbd_backlight/brightness)
. Однако, согласно systemd
, это больше не работает.
Я пытался следовать инструкциям здесь , чтобы создать systemd service
. Но это не сработало. Это текст, который я использовал:
[Unit] Описание = MBWD сценарий отключения подсветки клавиатуры
[Service] Тип = oneshot ExecStart = / usr / lib / systemd / scripts / keyboard_backlight .sh # RemainAfterExit = yes [Install] WantedBy = multi-user.target
Чтобы вызвать этот сценарий:
#!/bin/bash
echo 0 | sudo tee /sys/class/leds/asus::kbd_backlight/brightness
Затем я включил службу, запустил службу и использовал команду systemctl preset
, чтобы включить службу при запуске (я думаю, это то, что она делает).
После всего этого команда systemctl status
указывает, что служба включена, и когда я systemctl start
, служба отключает клавиатуру. И при перезагрузке, то есть при запуске, это может сработать, потому что клавиатура выключается при запуске Ubuntu.
ОДНАКО, как только я попадаю на экран входа в систему и вход в систему, снова включается индикатор клавиатуры. Я попытался отточить эту проблему, используя sleep 20
в скрипте и , создавая a systemd.timer
unit. Ни один не работал.
Кто-нибудь может помочь ???
Конечно, не лучший ответ, но можно переключиться от systemd до выскочки путем установки выскочки-sysv пакета.
sudo apt-get install upstart-sysv
Я наконец решил эту проблему при помощи rc-local.service
и /etc/rc.local
вместо того, чтобы создать отдельный systemd сервис. Вот то, что я сделал:
systemctl enable rc-local.service
/etc/rc.local
я поместил следующее: #!/bin/sh-e (спят 20 & & отзовитесь эхом 0>/sys/devices/platform/asus-nb-wmi/leds/asus:: kbd_backlight/brightness), выходят 0
/etc/rc.local
исполняемый файл: sudo chmod a+x/etc/rc.local
rc-local.service
systemctl дистанционное-управление-local.service состояния
, Это должно показать зеленый и сказать активный.Вот и все.