Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
TTYS(5)                   FreeBSD File Formats Manual                  TTYS(5)

     ttys - terminal initialization information

     The file ttys 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 the ttys file per special device file.  Fields are separated by
     tabs and/or spaces.  Fields comprised of more than one word should be
     enclosed in double quotes (``"'').  Blank lines and comments may appear
     anywhere in the file; comments are delimited by hash marks (``#'') and
     new lines.  Any unspecified fields will default to null.

     The first field is normally the name of the terminal special file as it
     is found in /dev.  However, it can be any arbitrary string when the
     associated command is not related to a tty.

     The second field of the file is the command to execute for the line,
     usually getty(8), which initializes and opens the line, setting the
     speed, waiting for a user name and executing the login(1) program.  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 usually connected to that tty
     line, normally the one found in the termcap(5) data base file.  The
     environment variable TERM is initialized with the value by either
     getty(8) or login(1).

     The remaining fields set flags in the ty_status entry (see getttyent(3)),
     specify a window system process that init(8) will maintain for the
     terminal line, optionally determine the type of tty (whether dialin,
     network or otherwise), or specify a tty group name that allows the login
     class database (see login.conf(5)) to refer to many ttys as a group, to
     selectively allow or deny access or enable or disable accounting
     facilities for ttys as a group.

     As flag values, the strings ``on'' and ``off'' specify that init(8)
     should (should not) execute the command given in the second field, while
     ``secure'' (if ``on'' is also specified) allows users with a uid of 0 to
     login on this line.  The flag ``dialin'' indicates that a tty entry
     describes a dialin line, and ``network'' indicates that a tty entry
     provides a network connection.  Either of these strings may also be
     specified in the terminal type field.  The string ``window='' may be
     followed by a quoted command string which init(8) will execute before
     starting the command specified by the second field.

     The string ``group='' may be followed by a group name comprised of
     alphanumeric characters that can be used by login.conf(5) to refer to
     many tty lines as a group to enable or disable access and accounting
     facilities.  If no group is specified, then the tty becomes a member of
     the group "none".  For backwards compatibility, the ``group='' should
     appear last on the line, immediately before the optional comment.

     Both the second field and any command specified with ``window='' will be
     split into words and executed using execve(2).  Words are separated by
     any combinations of tabs and spaces.  Arguments containing whitespace
     should be enclosed in single quotes (').  Note that no shell-style
     globbing or other variable substitution occurs.


     # root login on console at 1200 baud
     console "/usr/libexec/getty std.1200"   vt100   on secure
     # dialup at 1200 baud, no root logins
     ttyd0   "/usr/libexec/getty d1200"      dialup  on group=dialup # 555-1234
     # Mike's terminal: hp2621
     ttyh0   "/usr/libexec/getty std.9600"   hp2621-nl       on group=dialup # 457 Evans
     # John's terminal: vt100
     ttyh1   "/usr/libexec/getty std.9600"   vt100   on group=dialup         # 459 Evans
     # terminal emulate/window system
     ttyv0   "/usr/local/bin/xterm -display :0"      xterm   on window="/usr/local/bin/X :0"
     # Network pseudo ttys -- don't enable getty
     ttyp0   none    network         group=pty
     ttyp1   none    network off     group=pty

     login(1), getttyent(3), gettytab(5), login.conf(5), termcap(5), getty(8),

     A ttys file appeared in Version 6 AT&T UNIX.

FreeBSD 11.0-PRERELEASE          May 27, 2005          FreeBSD 11.0-PRERELEASE


Want to link to this manual page? Use this URL:

home | help