TTYTAB(5)

NAME
ttytab, ttys - terminal initialization data

DESCRIPTION

The /etc/ttytab file contains information that is used by various routines to initialize and control the use of terminal special files. This information is read with the getttyent(3) library routines. There is one line in /etc/ttytab file per special file.

The /etc/ttys file should not be edited; it is derived from /etc/ttytab by init(8) at boot time, and is only included for backward compatibility with programs that may still require it.

Fields are separated by TAB and/or SPACE characters. Some fields may contain more than one word and should be enclosed in double quotes. Blank lines and comments can appear anywhere in the file; comments are delimited by `#' and NEWLINE. Unspecified fields default to NULL. The first field is the terminal's entry in the device directory, /dev. The second field of the file is the command to execute for the line, typically getty(8), which performs such tasks as baud-rate recognition, reading the login name, and calling login(1). It can be, however, any desired command, for example the start up for a window system terminal emulator or some other daemon process, and can contain multiple words if quoted. The third field is the type of terminal normally connected to that tty line, as found in the termcap(5) data base file. The remaining fields set flags in the ty_status entry (see getttyent(3)) or specify a window system process that init(8) will maintain for the terminal line.

As flag values, the strings on and off specify whether init should execute the command given in the second field, while secure in addition to on allows “root” to login on this line. If the console is not marked “secure,” the system prompts for the root password before coming up in single-user mode. local in addition to on indicates that the line is a “local” line; the modem control signals for this line, such as Carrier Detect, will be ignored. These flag fields should not be quoted. The string window= is followed by a quoted command string which init will execute before starting getty.

The flag local applies to terminals, and enables the software carrier mode in the kernel; the kernel ignores the state of carrier detect when opening the serial port. Alternately, if this field is set to any value other than local, this flag disables the software carrier mode in the kernel, so the state of the carrier detect is not ignored. This usually applies to modems. See termio(4).

If the line ends in a comment, the comment is included in the ty_comment field of the ttyent structure.

After changing the /etc/ttytab file, you must notify init(8) before those changes will take effect. To do this, use:
    kill -1 1

EXAMPLES

Below is a sample /etc/ttytab file:

console	"/usr/etc/getty std.1200"	vt100	on secure
ttyd0	"/usr/etc/getty d1200"	dialup	on	# 555-1234
ttyh0	"/usr/etc/getty std.9600"	hp2621-nl	on	# 254MC
ttyh1	"/usr/etc/getty std.9600"	plugboard	on	# John's office
ttyp0	none	network
ttyp1	none	network	off
ttyv0	"/usr/new/xterm -L :0"	vs100	on window="/usr/new/Xvs100 0"
console "/usr/etc/getty -n -s    std.9600" sun          on      secure
console "/usr/etc/getty -n -s -l std.9600" sun          on      secure

The first line permits “root” login on the console at 1200 baud, and indicates that the console is physically secure for single-user operation. The second line allows dialup at 1200 baud without “root” login, and the third and fourth lines allow login at 9600 baud with terminal types of hp2621-nl and plugboard, respectively. The fifth and sixth lines are examples of network pseudo-ttys, ttyp0 and ttyp1 for which getty should not be enabled. The seventh line shows a terminal emulator and window-system startup entry. The last two lines instruct getty, using the -n argument, to run the logintool(8) graphic login interface, and the -s argument instructing logintool to start screenblank(1) with a plain black screen. The -l (lower case L) argument instructs logintool to start lockscreen(1). lockscreen starts after 30 minutes; there is no way to change this interval.

FILES
/dev
/etc/ttys
/etc/ttytab

SEE ALSO
login(1), ioctl(2), getttyent(3), termio(4), gettytab(5), termcap(5), getty(8), init(8), logintool(8), ttysoftcar(8)