How can I add more users to the "sudoers" file?
7 Answers
Just edit the file /etc/sudoers
.
But you are supped to use /usr/sbin/visudo
as your editor, since that will to some sanity checks before you exit.
So that would be:
sudo /usr/sbin/visudo
Here are some links that could be useful:
-
-
1
-
+1. On some systems, the /etc/sudoers is readonly, and editiion is forced through the visudo command. Dec 16, 2009 at 8:53
-
1If you have an
/etc/sudoers.d
directory, don't modify the/etc/sudoers
file. Instead, put the entry in its own file in that directory. Feb 6, 2013 at 6:48
My preferred method is to add them to the sudo
group (admin
before Ubuntu 10.04).
In Ubuntu Linux, the sudo
group can run sudo
and it is easy to add someone to that group:
usermod -a -G sudo username
Your mileage may vary with other distros, however, someone thought the group method made more sense than the sudoers file getting itself updatified. Less room for getting it wrong and locking everyone out of being superuser seems to be the reason.
-
1
Just edit your sudoers file
sudo visudo -f /etc/sudoers
and add the username like 'uk' without quotes
username ALL = (ALL)ALL
Save and exit would give the access.
-
6Like Johan says, visudo should be used to edit the sudoers file. A borked sudo file can lead to a world of avoidable pain. en.wikipedia.org/wiki/Visudo– user4358Sep 11, 2009 at 9:04
-
3
visudo
opens the sudoers file and has samples for simple situations.
You may have to add option 'NOPASSWD' if user scripts would use commands/binaries which can be run only with "sudo", e.g.
ALL=(ALL) NOPASSWD: ALL
It is also possible to specify group instead of user name. So you need not list each and every user, e.g.
%users localhost=/sbin/shutdown -h now
-
1
In Amazon Linux, there is /etc/sudoers.d
and inside it is cloud-init
which contains:
ec2-user ALL = NOPASSWD: ALL
# User rules for ec2-user
ec2-user ALL=(ALL) NOPASSWD:ALL
So all I did was cp cloud-init vlad
, then edit vlad
and replace all instances of ec2-user
with vlad
. Works fine, and it's obviously as it was intended to be done, rather than editing existing files.
Add to sudo group (Debian / Ubuntu specific step):
$ sudo gpasswd -a <username> sudo
Adding user <username> to group sudo
just by execute this command by a user which has a sudoer permission :
sudo adduser <username> sudo