deluser when deleting users) when you're creating new users from the command line. (If you're writing a script, especially if you aim for portability, you might want to use the lowlevel utilities instead – and
deluser might not be available on all distros, e.g. on SuSE.)
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).
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
by default choosing Debian policy conformant UID and GID values, creating a home
directory with skeletal configuration, running a custom script, and other features.
addgroup can be run in one of five modes:
useradd is a low level utility for adding users. On Debian, administrators should
See also: What's the difference between “adduser” and “useradd”? (on SuperUser)