Linux as every Unix is a full multiuser operating system, with a privileged user (root), system users used to launch system commands and daemons (lp, nobody, mail, news, uucp ...) and normal human interactive users.
The users database is /etc/passwd
(its logic and syntax is the same for every Linux)
Every modern Linux stores local users' passwords (and data) in /etc/shadow
Users can be placed in groups, defined in /etc/group
Systems's settings for UID/GID policy, password and login management are usually stored in /etc/login.defs
.
The standard user files (copied in its home directory, when a user is created) are in /etc/skel/
The commands useradd
, userdel
, usermod
are the basic ones that can be used to handle users.
The command passwd
is used to change passwords.
Every Linux distro provides its own text or graphical frontends for user management (sometimes more than one) and many of them can use external sources for authentication and accounting: LDAP, an NT or Active Directory Domain, NIS. Usually these databases, useful for a centrally managed user base, use used before checking local authentication data in the above mentioned files.
The graphical tools that can be used to manage easily users change according to the distro used:
FEDORA provides its own User Manager (Command: system-config-users
, Menu System Settings - Users and groups) to handle local users and the Authentication Configuration tool (Command: system-config-authentication
, Menu System Settings - Authentication) to configure easily an external authentication mechanism and activate the use of shadow passwords. The text based authconfig utility can be used also for these settings.
MANDRAKE provides the utility /usr/sbin/userdrake
to manage users with a nice graphical interface (Menu System - Configuration - Other - User Administration).
SLACKWARE does not provide custom user configuration tools. If installed from the CDs, it's possibile to use graphical tools as kuser on KDE, or the normal command line programs like adduser
.