log into the computer
login utility logs users (and
pseudo-users) into the computer system.
If no user is specified, or if a user is specified and
authentication of the user fails,
login prompts for
a user name. Authentication of users is normally done via passwords, though
external authentication mechanisms may be used (see
login.conf(5)). To specify the alternate authentication mechanism
style, the string :style is
appended to the user name (i.e.,
The options are as follows:
-foption is used when a user name is specified to indicate that proper authentication has already been done and that no password need be requested. This option may only be used by the superuser.
- Specifies the host from which the connection was received. This option may only be used by the superuser.
-Loption specifies the local address of a socket. This information is passed on to any classify script (see login.conf(5)).
- By default,
logindiscards any previous environment. The
-poption disables this behavior.
-Roption specifies the remote address of a socket. This information is passed on to any classify script (see login.conf(5)).
- Specifies the remote user that initiated the connection. This option may only be used by the superuser.
If the file /etc/nologin exists (and the
“ignorenologin” boolean is not set in the user's login class),
login displays its contents to the user and exits.
This is used by shutdown(8) to prevent users from logging in when the system
is about to go down.
If the file /etc/fbtab exists,
login changes the protection and ownership of
certain devices specified in this file.
If the file /var/log/failedlogin exists,
login will record failed login attempts in this
Immediately after logging a user in,
displays the system copyright notice, the date and time the user last logged
in, the date and time of the last unsuccessful login (if the file
/var/log/failedlogin exists), the message of the day
as well as other information. If the file
“.hushlogin” exists in the user's home
directory, all of these messages are suppressed. This is to simplify logins
for non-human users.
login then records an entry in
files and executes the user's command interpreter.
login enters information into the
environment (see environ(7)) specifying the user's home directory
HOME), command interpreter
SHELL), search path (
terminal type (
TERM), and user name (both
The standard shells, csh(1) and sh(1), do not fork before executing the
Note that if
login is invoked by a
non-root user, it will execute su(1) in
login emulation mode
login sets the following environment
- The user's home directory, as specified by the password database.
- The user's shell, as specified by the password database.
- The user's terminal type, if it can be determined.
- The user's login name.
- Same as
- The user's mailbox.
- The name of the host from which the user logged in, if the
-hflag was specified.
- The name of the remote user who initiated the connection, if the
-uflag was specified.
Other environment variables may be specified in /etc/login.conf via the “setenv” capability.
- changes device protections
- login configuration
- disallows logins
- failed login account records
- last login account records
- login account records
- system mailboxes
- current logins
- makes login quieter
chpass(1), passwd(1), su(1), telnet(1), readpassphrase(3), setusercontext(3), fbtab(5), login.conf(5), utmp(5), environ(7)
login utility appeared in
Version 2 AT&T UNIX.