This is an old revision of the document!


sudo

Use vim to edit sudo:

EDITOR=vim visudo

On Ubuntu, set the default editor:

sudo update-alternatives --config editor

Display sudo commands the user can run:

sudo -l

Run a command as a specific user:

sudo -u beandog -- whoami

Switch to another user:

sudo -u beandog -s

Syntax

<user/group> <hostnames>= [(<users>)] [NOPASSWD: [ALL|/usr/bin/command,/usr/bin/command2]]

Examples

Let user alan run rdiff-backup as another user, not requiring a password:

alan ALL= (clientuser) NOPASSWD: /usr/bin/rdiff-backup

Let user alan run one command as root:

alan ALL= NOPASSWD: /usr/sbin/backup-manager

Allow user steve to run any command as user beandog without asking for password:

steve ALL=(beandog) NOPASSWD: ALL

Set PATH for new user. sudo will not pass the user's PATH when switching to another user by default.

Defaults secure_path = /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin