如何让sudo访问bash脚本?

时间:2012-07-13 10:47:22

标签: bash sudo sudoers

我有一个bash脚本(chbr.sh)来改变终端的显示亮度,因为我的亮度键不起作用。

`sudo setpci -s 00:02.0 F4.B=30`

现在,每次我运行该脚本时都会要求输入我不喜欢的密码。所以,我搜索了一下,发现可以编辑/etc/sudoers文件来禁用密码功能。

因此,我使用以下内容编辑了我的sudoers文件

ronnie ALL = (ALL) NOPASSWD: /home/ronnie/chbr.sh

现在当我以./chbr.sh运行我的脚本时,它再次要求我输入密码。那么,这不是让sudo访问bash脚本的正确方法,或者我在这里做错了什么。

ronnie@ronnie:~$ ls -l chbr.sh
~rwxrwxr-x 1 ronnie ronnie 46 Jul 13 15:59 /home/ronnie/chbr.sh

3 个答案:

答案 0 :(得分:10)

您使所有内容都正确,但使用完整路径执行脚本:

$ sudo /home/ronnie/chbr.sh

答案 1 :(得分:3)

您运行sudo /home/ronnie/chbr.sh吗?

文件内容为

setpci -s 00:02.0 F4.B=30

或者您允许用户ronnie在没有密码的情况下sudo setpci

ronnie ALL = (ALL) NOPASSWD: /sbin/setpci< - 或者你的setpci所在的路径。

答案 2 :(得分:0)

适合偶然发现这个旧论坛的任何人。您不需要sudo即可更改亮度。可以使用“ light”程序完成,其中

light -A 5

将亮度增加5和

light -U 5

将亮度降低5。