60

What's the difference between useradd and adduser? When/why should I prefer using one or the other?

John Gardeniers
  • 27,262
  • 12
  • 53
  • 108
lindelof
  • 909
  • 1
  • 8
  • 11

5 Answers5

40

In the case of Debian and its related distros, adduser is a friendlier interactive frontend to useradd.

Dennis Williamson
  • 60,515
  • 14
  • 113
  • 148
Niall Donegan
  • 3,859
  • 19
  • 17
17

Always use adduser (and deluser when deleting users).

The useradd, userdel and usermod commands are lowlevel utilities which are there for historical reasons, while adduser/deluser Do The Right Thing™. (I remember which to use by thinking that user* comes after adduser/deluser in the alphabet, and therefore is "worse".)

According to the respective manpages (on Ubuntu 12.04 Precise Pangolin, i.e. a Debian derivative system).

Manpage for adduser says:

(Emphasis added.)

adduser and addgroup add users and groups to the system according to command line options and configuration information in /etc/adduser.conf. They are friendlier front ends to the low level tools like useradd, groupadd and usermod programs, by default choosing Debian policy conformant UID and GID values, creating a home directory with skeletal configuration, running a custom script, and other features. adduser and addgroup can be run in one of five modes:

Manpage for useradd says:

useradd is a low level utility for adding users. On Debian, administrators should usually use adduser(8) instead.

See also:

zrajm
  • 279
  • 2
  • 5
13

On Ubuntu, useradd simply creates an entry in the user database (/etc/passwd etc.).

adduser on the other hand also creates a home directory for the user, populates it with the content of /etc/skel and lets you set the password interactively.

Dennis Williamson
  • 60,515
  • 14
  • 113
  • 148
Christian
  • 411
  • 2
  • 7
7

lrwxrwxrwx. 1 root root 7 Nov 17 13:52 /usr/sbin/adduser -> useradd

One is a "shortcut" / "symbolic link" to the other. So no difference.

This is on redhat linux (and centos / fedora), it may not hold true on other distros.

Sirex
  • 5,447
  • 2
  • 32
  • 54
7

On FreeBSD:
adduser is a "friendly" interactive Q&A way to add local users.
useradd doesn't exist.

Chris S
  • 77,337
  • 11
  • 120
  • 212