我想运行一个脚本来在登录时关闭华硕的键盘背光(这个答案没有用)。在 Ubuntu 15.04中引入之前systemd
,我是通过 /etc/rc.local
使用命令来做到这一点的(sleep 10 && echo 0 > /sys/class/leds/asus::kbd_backlight/brightness)
。但是,在 下systemd
,这不再有效。
我尝试按照此处的说明创建一个systemd service
. 但这没有用。这是我使用的文本:
[Unit] Description=MBWD Keyboard Backlight OFF 脚本
[服务] Type=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
在脚本中同时使用和创建一个systemd.timer
单元来解决这个问题。都没有用。
谁能帮忙???
我最终通过使用
rc-local.service
and/etc/rc.local
而不是创建单独的 systemd 服务解决了这个问题。这是我所做的:systemctl enable rc-local.service
/etc/rc.local
我输入以下内容:#!/bin/sh -e (sleep 20 && echo 0 > /sys/devices/platform/asus-nb-wmi/leds/asus::kbd_backlight/brightness) exit 0
/etc/rc.local
可执行:sudo chmod a+x /etc/rc.local
rc-local.service
systemctl状态rc-local.service
它应该显示绿色并表示活动。就是这样。
当然不是最佳答案,但您可以通过安装软件包 upstart-sysv 从 systemd 切换到 upstart。