Provided by: manpages-ja_0.5.0.0.20221215+dfsg-1_all
名前
agetty - Linux 用 getty のもう一つの実装
書式
agetty [-ihLmnw] [-f issue_file] [-l login_program] [-I init] [-t timeout] port baud_rate,... [term] agetty [-ihLmnw] [-f issue_file] [-l login_program] [-I init] [-t timeout] baud_rate,... port [term]
説明
agetty は tty ポートをオープンし、ログイン名を求めるプロンプトを出し、 /bin/login コマンド を起動する。通常 agetty は init(8) から 起動される。 agetty はいくつか非標準な機能を持っており、直結ラインやダイアルインの ラインに便利になって いる。 o ログイン名を読むときに tty の設定(パリティビット、 erase、 kill、 end-of-line、 uppercase 文字)を行う。 agetty は 7 ビット文字を偶、奇、スペースの各パリティ、ある いはパリティなしの いずれでも扱うことができる。また 8 ビット文字をパリティなしで扱 うこと ができる。以下の特殊文字を認識する; @ および コントロール U (kill)、 #、 DEL およびバックスペース (erase)、復帰 (carriage return) および改行 (linefeed) (end of line)。 o オプション機能: Hayes(tm) 互換のモデムが出す CONNECT メッセージ から通信速度 (baud rate) を推測する。 o オプション機能: すでにオープンしているラインを与えられた場合に はラインを切断しない (コールバックの用途に便利)。 o オプション機能: /etc/issue ファイルの内容を表示させない。 o オプション機能: /etc/issue 以外の issue ファイルを表示する。 o オプション機能: ログイン名を尋ねない。 o オプション機能: /bin/login 以外の非標準なログインプログラムを起 動する。 o オプション機能: ハードウェアによるフローコントロールを有効にする。 o オプション機能: 接続ラインをローカルなライン (キャリア検知を必要としな いライン) に 設定する。 このプログラムは /etc/gettydefs (System V) や /etc/gettytab (SunOS 4) ファイルを利用しな い。 port /dev/ ディレクトリからの相対パス名。 "-" が指定されると、 agetty は自分の標準入力が すでに tty ポートに接続されており、リモートユーザー への接続がすでに確立されている ものとみなす。 System V では port 引き数としての "-" は "--" の前に置かなければ ならない。 baud_rate,... 一つ以上の通信速度をコンマで区切ったリスト。 agetty が BREAK 文字を受け取ると、リス トの次に進む。最後まで行ったら最初に戻 る。 通信速度は大きい方から小さい方へと並べるようにする。こうすると null 文字 (Ctrl-@) も通信速度の切り替えに使えるようになる。 term TERM 環境変数に用いる値。これは init(8) の設定を上書きし、 login およ び shell に受 け継がれる。
オプション
-h ハードウェア (RTS/CTS) コントロールを有効にする。ソフトウェアによる (XON/XOFF) フ ローコントロールを無効にするかどうかはアプリケーションに 任せる。 -i ログインプロンプトの前に /etc/issue の内容を表示しない。端末や通信装置は、正しくな い通信速度で大量のテキ ストを受け取ると混乱してしまうことがある。ダイアルアップスク リプトによっ ては、ログインプロンプトの前に大量のテキストを受け取ると落ちてしまう場 合がある。 -f issue_file issue_file を /etc/issue の代わりに表示する。端末別にメッセージを変えることができる ようになる。 -i オプションはこのオプションを上書きする。 -I initstring 通信に先立って tty やモデムに送る初期化文字列を設定する。これはモデムの 初期化に用 いることができる。印刷できない文字も、バックスラッシュ (\) に引き続いて 8 進数で指 定すれば送ることができる。例えば改行文字 (ASCII 10, 8 進数では 012) を送るには \012 とする。 -l login_program 指定した login_program を /bin/login の代わりに起動する。これに よって非標準なログ インプログラム (例えばダイアルアップパスワードを尋ね たり、 /etc/passwd 以外のパス ワードファイルを用いるなど) を使うことが できる。 -m 通信速度を Hayes(tm) 互換モデムが出す CONNECT メッセージから抽出しよ うと試み る。メッセージは "<その他><速度><その他>" というような形式になっ ている。 agetty で は、コマンドラインの baud_rate の先頭に指定されたスピードで、 モデムがステータス メッセージを出力するものとみなしている。 -m の機能は負荷の高いシステムでは失敗することもあるので、コマン ドラインでも予想さ れる通信速度をすべて列記して、 BREAK 処理を有効に しておく方が良いだろう。 -n ログイン名入力のプロンプトを出さない。これは -l オプションと共に用い て、 BBS シス テムのように非標準のログイン処理を起動する際に便利である。 -n オプションを用いる と、 agetty はログインしてくるユーザーから 入力を受け取ることができないので、コネク ションのパリティやキャラクタビッ ト数、改行処理などを決定することができない。デフォ ルトはスペースパリティ、 文字は 7 ビット、行末文字は ASCII の CR (13) となってい る。 agetty が起動するプログラム (通常は /bin/login) は root 権限で実行されること に注意せよ。 -t timeout timeout 秒以内にユーザー名を読み込むことができなかったら切断する。 このオプションは 直結回線には用いない方が良いだろう。 -L 接続回線を、キャリア検知の必要がないローカルな直結回線であるとみなす。 これはローカ ルに接続された端末で、キャリア検知用の信号線がないシリアル ケーブルを使っているとき に便利である。 -w ユーザーまたはモデムからの復帰文字か改行文字を待ち、これを受け取ってか ら /etc/issue (または別の issue) ファイルやログインプロンプトを 出す。 -I オプションを 用いた接続の際に非常に便利。
例
この節では /etc/inittabファイルに記述するコマンドエントリの例を示す。 他のフィールドに は、それぞれ適当な値を指定する必要があるだろう。詳細は inittab(5) を参照すること。 直結ラインまたはコンソール tty 用: /sbin/agetty 9600 ttyS1 直結された端末で、正しい CD 線のない場合 (password: プロンプトが出ない で端末が黙ってしま う場合はこちらを試してみると良い): /sbin/agetty -L 9600 ttyS1 vt100 9600/2400/1200 bps のモデムを用いた古いスタイルのダイアルイン接続ライ ン /sbin/agetty -mt60 ttyS1 9600,2400,1200 Hayes モデムで、マシンへのインターフェースが 115200 bps に固定されてい る場合 (以下の例の 初期文字列ではモデムのエコーとリザルトコードを抑止し、 モデム/コンピュータ間の DCD はモデ ム/モデム間の DCD に追随するようにし、 DTR が落ちた場合は切断とベル 1 回での自動応答機能を 有効にするように 設定している): /sbin/agetty -w -I 'ATE0Q1&D2&C1S0=1\015' 115200 ttyS1
ISSUE で利用できるエスケープ
issue ファイル (/etc/issue または -f オプションで設定されたファイル) ではシステム名や日 付、時間 などを表示するエスケープコードを用いることができる。エスケープコードは バックス ラッシュ (\) とそれに続く一文字からなる。文字は以下のうちのど れか。 b 現在のラインの通信速度。 d 現在の日付。 s システム名 (オペレーティングシステムの名前)。 l 現在の tty ラインの名前。 m マシンのアーキテクチャを表す名前 (例: i486)。 n マシンのノード名 (ホスト名)。 o マシンのドメイン名。 r OS のリリース番号 (例: 1.1.9)。 t 現在の時刻。 u 現在ログインしているユーザー数。 U 文字列 "1 user" または "<n> users"。 <n> は現在ログインしているユーザー 数。 v OS のバージョン (ビルドした日付など)。 以下は著者のシステムでの /etc/issue ファイルの例である: This is \n.\o (\s \m \r) \t 表示は以下のようになる。 This is thingol.orcan.dk (Linux i386 1.1.9) 18:29:30
ファイル
/var/run/utmp, システムのステータスファイル。 /etc/issue, ログインプロンプトの前に表示される。 /dev/console, 障害を報告する端末 (syslog(3) が使われていない場合)。 /etc/inittab, init(8) の設定ファイル。
バグ
通信速度の自動検知機能 (-m オプション) では、 agetty のスケジュールがダイアルイン接続の確 立後すぐに回ってこなければならない (2400 bps の場合は 30 ms 以内)。システムを強くするため に、 -m オプションを用いる場合には、常にコマンドライン引き数で通信速度の複数 指定を行い、 BREAK 処理を有効にしておくべきである。 /etc/issue (または他の issue ファイル) のテキストとログインプロンプトの表示には常 に 7 ビット文字とスペースパリティが用いられる。 通信速度の自動検知機能 (-m オプション) では、モデムのステータ スメッセージは DCD ラインが high になってからでないと受け付けない。
返り値
プログラムが返す情報はすべて console デバイスに書き込まれるか、 syslog(3) を通してレポート される。どちらかはプログラムの設定に依存する。 port 引き数が端末デバイスを指定していない場 合、 utmp に現在のプ ロセスのエントリがない場合 (System V のみ) などにエラーメッセージ が 発行される。
著者
W.Z. Venema <wietse@wzv.win.tue.nl> Eindhoven University of Technology Department of Mathematics and Computer Science Den Dolech 2, P.O. Box 513, 5600 MB Eindhoven, The Netherlands Peter Orbaek <poe@daimi.aau.dk> Linux への移植とオプションの追加。現在もコードを保守している。 Eric Rasmussen <ear@usfirst.org> -f オプション (端末によってissue ファイルを変更する機能) の追加。
作成日
Sat Nov 25 22:51:05 MET 1989
最終修正日
96/07/20 AGETTY(8)