login(1)
Name
login − log in to a system
Syntax
login [username]
Description
The login command is used when a user initially signs on, or it may be used at any time to change from one user to another. The latter case is the one summarized above and described here. To sign on initially, see the Guide to System Environment Setup.
If login is invoked without an argument, it asks for a user name, and, if appropriate, a password. Echoing is turned off (if possible) during the typing of the password, so it does not appear on the written record of the session.
After a successful login accounting files are updated, the user is informed of the existence of mail, the message of the day is printed, and the time of last successful login is displayed. The display of all this information can be prevented by creating the file .hushlogin in the accounts login directory. This is useful for accounts such as uucp.
If ULTRIX security features are enabled additional things may happen. These include the display of the number of failed login attempts since the last successful login and forcing the setting of a new password. See the Security Guide for Users and Security Guide for Administrators for more information.
The login command initializes the user and group IDs, the working directory, and the users audit information, then executes a command interpreter, usually sh(,), according to specifications found in a password file. Argument 0 of the command interpreter is “−sh”, or more generally the name of the command interpreter with a leading dash (“−”) prepended.
The login command also initializes the environment environ() with information specifying home directory, command interpreter, terminal type (if available) and user name.
When login is used in conjunction with getty() it is the responsibility of the getty program to initialize the terminal attributes. Specifically if a terminal is setup to use 8-bit characters the getty program should use a gettytab() entry which specifies 8-bit characters. If a terminal is setup in 8-bit mode but fails to specify an 8-bit gettytab entry, then characters output by both login and getty may appear as multinational characters.
If the file /etc/nologin exists, login prints its contents on the user’s terminal and exits. This is used by shutdown() to stop users logging in when the system is about to go down.
The login command is recognized by sh() and csh() and executed directly (without forking).
If a root login is attempted and an invalid command interpreter is specified, the sh interpreter is used.
Options
−rUsed by the remote login server, rlogind(,), to force login to enter into an initial connection protocol.
−P <programname>Causes login to set it’s standard input and output to be connected to the prompting program <programname>.
−C stringAllows the system to specify a command to be run using the user’s shell. This option causes a user shell −c string to be exec’ed.
−eForces login to use an extended protocol when communicating with a prompter program (see −P).
Restrictions
To provide flow control, CTRL/S and CTRL/Q are ignored and are therefore invalid characters in a login name.
Diagnostics
Login incorrect
If the username and password are not a valid combination.
Too many users logged on already. Try again later.
The system has the maximum licensed number of users logged on already.
License not valid for this version of ULTRIX.
The PAK that has been registered is for an earlier version of ULTRIX.
No valid license found for ULTRIX.
There is either no ULTRIX PAK registered or the PAK that has been found is not valid, possibly because it has terminated.
Requires secure terminal
An attempt was made to login as UID 0 on a line that is not marked as secure in /etc/ttys.
No shell
The login shell specified for the account cannot be executed. Consult the system administrator.
No directory! Logging in with home=/
The HOME directory for the account is inaccessible. This can happen if the directory resides on an NFS file system served by a host that is not currently available.
You have too many processes running
Completion of login would exceed the maximum number of running processes allowed for the user.
You have mail
You have a non-empty mail spool file.
If ULTRIX security features are enabled the following messages are also possible from login:
Your password has expired
The password for your account has not been changed recently enough. Consult your system administrator.
Your password has expired, please change it
Your password has expired recently. You have to change it before you can proceed any further.
Your password will expire very soon
Your password will expire in less than 24 hours.
Your password will expire in %d days
The “%d” is replaced with the number of days until your password expires. You should consider changing your password now.
This account is disabled
Consult your system administrator.
Kerberos initialization failure
Consult your system administrator.
Files
/etc/utmp accounting
/usr/adm/wtmp accounting
/usr/spool/mail/*
mail
/etc/motd message-of-the-day
/etc/auth.[pag,dir]
authorization data base
/etc/passwd password file
/etc/nologin stops logins
/etc/svc.conf sets I&A security level
.hushlogin makes login quieter
/etc/securetty lists ttys that root may log in on
See Also
mail(1), passwd(1), yppasswd(1yp), passwd(5yp), environ(7), getty(8), init(8), rlogind(8c), shutdown(8)
Guide to System Environment Setup
Security Guide for Users
Security Guide for Administrators