I've put a command sudo do something
in my ~/.bashrc
, this works but everytime I open the terminal I have to type in my password. How do I make it so there is no password-typing?
3 Answers
You can use the NOPASSWD
attribute in the sudoers file to tell sudo not to require a password. A line like the follows in the sudoers file should let you run that command without a password:
yourlogin ALL=(ALL) NOPASSWD: command_here
To edit the sudoers file, run the command sudo visudo
.
-
3
-
That depends on the command run. I assume user19192 actually knows what he's doing and wants to run this :) Nov 13, 2012 at 18:51
-
@Hckr I think there's no risk if you have control over your script. Nov 13, 2012 at 18:53
-
3yeah,
NOPASSWD: ALL
is a different beast. Wouldn't recommend that. Nov 13, 2012 at 19:06 -
4WARNING: Do not use a regular text editor to edit the
sudoers
file, always use thevisudo
command. Because if you mess it up and save it like that, you won't be able to usesudo
afterwards: askubuntu.com/questions/73864/…– BlokeMar 30, 2017 at 8:04
You can edit the sudoers file by executing the following line:
sudo gedit /etc/sudoers
add the following line to the file: your_login ALL=(ALL) NOPASSWD: command
-
NOTE: I generally don't encourage this option because the sudo function is built in to protect the user. no longer requiring a password is negating the purpose of it. However if you are confident it will not be a security problem then go ahead. Nov 13, 2012 at 18:51
-
8Using gedit to edit /etc/sudoers is a recipe for disaster. If you make a typo in the sudoers file you can lock yourself out of sudoing. Always use
visudo
to edit:export EDITOR=gedit; sudo -E visudo
– mogsieJan 22, 2014 at 12:20
You can edit the sudoers file with the command sudo visudo.
Your command that you want to authorize should be the path to it or you will get an error.
yourlogin ALL=(ALL) NOPASSWD: /path/to/my/command_here