Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to give sudo access to a bash script?

Tags:

bash

sudo

sudoers

I have a bash script(chbr.sh) to change my display brightness from terminal as my brightness keys doesn't work.

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

Now, every time I run that script it asks for password which I don't like. So, I googled a little and found out that one can edit /etc/sudoers file to disable the password feature.

So, I edited my sudoers file with the below content

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

Now when I run my script as ./chbr.sh it again asks for my password. So, is this not the right way to give sudo access to a bash script or what am I doing wrong here.

ronnie@ronnie:~$ ls -l chbr.sh
~rwxrwxr-x 1 ronnie ronnie 46 Jul 13 15:59 /home/ronnie/chbr.sh
like image 591
ronnie Avatar asked Jul 13 '12 10:07

ronnie


2 Answers

You make all correct, but execute the script with te full path:

$ sudo /home/ronnie/chbr.sh
like image 88
Igor Chubin Avatar answered Sep 29 '22 11:09

Igor Chubin


Do you run sudo /home/ronnie/chbr.sh?

With the content of the file being

setpci -s 00:02.0 F4.B=30

Or you allow user ronnie to sudo setpci without password:

ronnie ALL = (ALL) NOPASSWD: /sbin/setpci <-- or whatever path your setpci resides in.

like image 27
fragmentedreality Avatar answered Sep 29 '22 13:09

fragmentedreality