我可以让这个需要 sudo 在启动时运行的键盘轻命令吗?

Que*_*ner 4 startup command-line keyboard

我的笔记本电脑键盘下面有一个灯。我怀疑键盘灯会消耗大量电量,但对于笔记本电脑和电池,每一点都有帮助。所以我更喜欢它默认为关闭。

我发现这个命令可以在关闭键盘灯的命令行上运行:

echo 0 | sudo tee /sys/class/leds/asus::kbd_backlight/brightness
Run Code Online (Sandbox Code Playgroud)

这很好,但我想把它放在我的启动程序列表中,这样我就不必记得关闭键盘灯,而我经常忘记这样做。

但是,如果我将它放在启动应用程序中,它似乎不起作用,我怀疑这可能是因为它的一部分需要sudo,所以它可能在启动时没有正确的权限。或者也许这是另一个问题。在任何情况下,它都不会在启动时运行。

有没有办法让这个命令在启动时运行?

Nic*_*Tux 6

有没有办法让这个命令在启动时运行?

是的,

您可以在 rc.local 文件中添加此命令,以便在系统引导/或重新启动时执行。

编辑文件,您将需要 root 权限。

gksudo gedit /etc/rc.local 
Run Code Online (Sandbox Code Playgroud)

并在前面添加命令行 exit 0

该文件应该读

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
echo 0 > /sys/class/leds/asus::kbd_backlight/brightness
exit 0
Run Code Online (Sandbox Code Playgroud)

保存文件并重新启动以检查结果。没有sudo这里需要的,因为该文件被执行的root用户。

我不记得默认情况下(在 Ubuntu 中)此文件中的执行位是什么,但是您可以使用以下命令添加执行位

sudo chmod +x /etc/rc.local
Run Code Online (Sandbox Code Playgroud)