最初のフィールドは、通常は端末特殊ファイルの名前であり、 /dev にあるようなものです。 しかしながら、関連付けられたコマンドが tty に無関係である場合、 任意の文字列にできます。
2 番目のフィールドはその回線に対して実行するコマンドで、 通常 getty(8) です。これは回線を初期化して開くプログラムで、スピードを設定したり、 ユーザ名を待ったり login(1) プログラムを実行します。 しかしながら、それはどんな希望するコマンド、例えばウィンドウシステム の端末エミュレータやデーモンプロセスの起動コマンドでも構いません。 そして、もしクォートで括られているのなら複数語を含む事もできます。
3 番目のフィールドは通常その tty 回線に接続される端末のタイプで、普通 termcap(5) データベースファイル中に収められています。 環境変数 TERM は getty(8) または login(1) による値に初期化されます。
残りのフィールドは Fa ty_status エントリ (getttyent3 参照) 中のフラグを指定したり、その端末回線に対して init(8) が維持するウィンドウシステムのプロセスを指定したり、 オプションで tty のタイプ (ダイヤルインか、ネットワークか、またはそれ以外か) を決定したり、 またログインクラスのデータベース (login.conf5 参照) が多くの tty をグループとして参照できるような tty グループ名を指定します。 これはグループとして tty に対して選択的にアクセスを許可または 拒否したりアカウンティング機能を可能または不可能にするためです。
フラグの値としては、文字列 ``on'' と ``off'' は init(8) が 2 番目のフィールドで与えられるコマンドを実行するか(しないか)を 指定します。一方 ``secure'' は ( ``on'' も与えられていれば) uid が 0 のユーザがこの回線にログインすることを許可します。 フラグ ``dialin'' は tty エントリがダイヤルイン回線であることを 示しており、 ``network'' は tty エントリがネットワーク接続で あることを示しています。 端末タイプのフィールドには、これらの文字列のどちらかが指定できます。 文字列 ``window='' の後には init(8) が 2 番目のフィールドで指定されるコマンドを開始する 前 に実行するコマンド列をクォートで括って続けます。
文字列 ``group='' の後には、 多くの tty 回線をアクセスの許可/拒否やアカウンティング機能の 可能/不可能を決めるためのグループとして参照するために login.conf5 で使われる、文字・数字のグループ名を続けます。 何のグループも指定されなかった場合、ttyはグループ "none" に属するように なります。 以前との互換性のために、 ``group='' は行の最後に、任意のコメントのすぐ前 に現れなければなりません。
第 2 フィールドと ``window='' で指定されるコマンドは、語に分解され、 execve(2) を使用して実行されます。 語は、タブとスペースの任意の組み合わせで区切られます。 空白を含む引数は、シングルクォート ( ) で区切るべきです。 シェル式のグラブその他さまざまな置換は働かないことに注意してください。
# 1200 ボーでコンソール、root でのログイン可 console "/usr/libexec/getty std.1200" vt100 on secure # 1200 ボーでダイヤルアップ、root でのログイン不可 ttyd0 "/usr/libexec/getty d1200" dialup on group=dialup # 555-1234 # Mike の端末: hp2621 ttyh0 "/usr/libexec/getty std.9600" hp2621-nl on group=dialup # 457 Evans # John の端末: vt100 ttyh1 "/usr/libexec/getty std.9600" vt100 on group=dialup # 459 Evans # 端末エミュレート/ウィンドウシステム ttyv0 "/usr/new/xterm -L :0" vs100 on window="/usr/new/Xvs100 0" # ネットワーク仮想 tty -- getty は使用しません ttyp0 none network group=pty ttyp1 none network off group=pty