gettydefs(4)gettydefs(4)NAMEgettydefs - speed and terminal settings used by getty
The /etc/gettydefs file contains information used by getty(1M) to set up
the speed and terminal settings for a line. It supplies information on
what the login(1) prompt should look like. It also supplies the speed to
try next if the user indicates the current speed is not correct by typing
a <break> character.
Note: Customers who need to support terminals that pass 8 bits to the
system (as is typical outside the U.S.) must modify the entries in
/etc/gettydefs as described in the WARNINGS section.
Each entry in /etc/gettydefs has the following format:
label# initial-flags # final-flags # login-prompt #next-label
Each entry is followed by a blank line. The various fields can contain
quoted characters of the form \b, \n, \c, and so on as well as \nnn,
where nnn is the octal value of the desired character. The various
label This is the string against which getty tries to match its
second argument. It is often the speed, such as 1200, at
which the terminal is supposed to run, but it need not be
initial-flags These flags are the initial ioctl(2) settings to which the
terminal is to be set if a terminal type is not specified
to getty. The flags that getty understands are the same
as the ones listed in /usr/include/sys/termio.h (see
termio(7)). Normally only the speed flag is required in
the initial-flags. getty automatically sets the terminal
to raw input mode and takes care of most of the other
flags. The initial-flag settings remain in effect until
getty executes login.
final-flags These flags take the same values as the initial-flags and
are set just before getty executes login. The speed flag
is again required. The composite flag SANE takes care of
most of the other flags that need to be set so that the
processor and terminal are communicating in a rational
fashion. The other two commonly specified final-flags are
TAB3, so that tabs are sent to the terminal as spaces, and
HUPCL, so that the line is hung up on the final close.
login-prompt This entire field is printed as the login-prompt. Unlike
the above fields where white space is ignored (a space,
tab, or newline), they are included in the login-prompt
field. As a special feature, this field can contain the
string $HOSTNAME, which is replaced by the current
hostname of the machine. See hostname(1) for more
next-label If this entry does not specify the desired speed,
indicated by the user typing a <break> character, then
getty searches for the entry with next-label as its label
field and sets up the terminal for those settings.
Usually, a series of speeds are linked together in this
fashion, into a closed set; for instance, 2400 linked to
1200, which is linked to 300, which finally is linked to
If getty is called without a second argument, then the first entry of
/etc/gettydefs is used, thus making the first entry of /etc/gettydefs the
default entry. It is also used if getty can not find the specified
label. If /etc/gettydefs itself is missing, there is one entry built
into getty that brings up a terminal at 300 baud.
It is strongly recommended that after making or modifying /etc/gettydefs,
it be run through getty with the check option to be sure there are no
SEE ALSOgetty(1M), login(1), stty(1), ioctl(2), termio(7).
To support terminals that pass 8 bits to the system (see the BUGS
section), modify the entries in the /etc/gettydefs file for those
terminals as follows: add CS8 to initial-flags and replace all
occurrences of SANE with the values: BRKINT IGNPAR ICRNL IXON OPOST
ONLCR CS8 ISIG ICANON ECHO ECHOK.
An example of changing an entry in /etc/gettydefs is illustrated below.
All the information for an entry must be on one line in the file.
CONSOLE # B9600 HUPCL OPOST ONLCR # B9600 SANE IXANY TAB3
HUPCL # $HOSTNAME console Login: # console
CONSOLE # B9600 CS8 HUPCL OPOST ONLCR # B9600 BRKINT IGNPAR
ICRNL IXON OPOST ONLCR CS8 ISIG ICANON ECHO ECHOK IXANY
TAB3 HUPCL # $HOSTNAME console Login: # console
This change permits terminals to pass 8 bits to the system so long as the
system is in MULTI-USER state. When the system changes to SINGLE-USER
state, the getty is killed and the terminal attributes are lost. So to
permit a terminal to pass 8 bits to the system in SINGLE-USER state,
after you are in SINGLE-USER state, type (see stty(1)):
stty -istrip cs8
8-bit with parity mode is not supported.