163

I want to grant a newly created user sudo privileges in Ubuntu.

I tried

sudo adduser hduser admin

but it says no admin group exists. How can I do it?

3
  • What is the output of sudo visudo?
    – Mitch
    Jul 26, 2012 at 8:19
  • 1
    This was changed recently, which is the reason for the confusion.
    – Adrian
    Jul 26, 2012 at 8:29
  • sudo adduser <username> sudo - did the trick for me. Second sudo is the group name instead of sudo
    – Jamess
    Sep 21, 2012 at 12:28

4 Answers 4

238

You need to add the user hduser to the sudo group (which is the "administrators" group in Ubuntu).

If you have already created the user, you can add the user to the sudo group by running the following command in a Terminal:

sudo usermod -a -G sudo hduser
9
  • 49
    Note that the user must log off, then back on again for this change to take effect. Jul 5, 2013 at 16:01
  • 3
    not working ubuntu 14 Jan 8, 2016 at 6:23
  • 1
    Usage: usermod [options] LOGIN Options: -c, --comment COMMENT new value of the GECOS field -d, --home HOME_DIR new home directory for the user account -e, --expiredate EXPIRE_DATE set account expiration date to EXPIRE_DATE -f, --inactive INACTIVE set password inactive after expiration to INACTIVE -g, --gid GROUP force use GROUP as new primary group -G, --groups GROUPS new list of supplementary GROUPS -a, --append append the user to the supplemental GROUPS Jan 8, 2016 at 6:24
  • No problem here using ubuntu 14. Thx.
    – joedragons
    Jan 26, 2016 at 20:09
  • Yes , @JacobFoshee is right - "user must log off, then back on again for this change to take effect."
    – vivekyad4v
    Nov 4, 2016 at 14:43
27

Instead you can try,

sudo adduser hduser sudo

In Ubuntu you need to add the user only to the group sudo.

13

1) Become root. You can do this using sudo -i or becoming root the old fashioned way su -

2) Run visudo

3) I changed this portion of the sudoers file to have my chosen users become sudo users, and you can add users similarly (blank lines introduce to format cleanly):

## User Aliases
## These aren't often necessary, as you can use regular groups
## (ie, from files, LDAP, NIS, etc) in this file - just use %groupname
## rather than USERALIAS
# User_Alias ADMINS = jsmith, mikem dbadmin 
ALL=(ALL) ALL
ics ALL=(ALL) ALL 
csm ALL=(ALL) ALL 
coa ALL=(ALL) ALL

4) Press : and x to write the changes to sudoers and exit vi.

3
  • 3
    This seems needlessly complicated. Why bother running visudo when the adduser command will do what you want? Jul 11, 2014 at 9:29
  • 2
    @dan-dascalescu - $ sudo adduser username sudo won't work if the 'sudo' group does not exist. So adding the user manually is certainly an option. However, it's certainly more elegant to create a sudo group, add it to the sudoers file (e.g. via visudo), then add the appropriate user(s) to that user group.
    – JBB
    Oct 2, 2015 at 17:47
  • 1
    @JarrettBarnett That was the case for me. Thank you for your answer.
    – Marcel
    Mar 21, 2016 at 22:47
5

Edit the sudoers file: sudo visudo

and add:

user    ALL=(ALL:ALL) ALL
4
  • 10
    Why bother editing /etc/sudoers when the adduser command will work? Jul 11, 2014 at 9:29
  • @Zanna You have edited sudo visudo /etc/sudoers Is it correct? AFAIK, it is either sudo visudo or sudo nano /etc/sudoers
    – d a i s y
    Feb 18, 2017 at 8:29
  • ah @Lnux you're right, but you should always use visudo to edit /etc/sudoers because it stops you from making a fatal syntax error. I corrected
    – Zanna
    Feb 18, 2017 at 8:32
  • @DanDascalescu maybe because for some people it doesnt work?
    – The Fool
    Dec 26, 2020 at 14:04

Not the answer you're looking for? Browse other questions tagged or ask your own question.