sourCEntral - mobile manpages

pdf

SULOGIN

名前

sulogin − シングルユーザログイン

書式

sulogin [ -e ] [ -p ] [ -t timeout ] [ tty-device ]

説明

sulogin は、システムがシングルユーザモードに入ったときに (inittab(5) のエントリを通して) init(8) から起動される。 init は LILO などのブートモニタから -b フラグを与えられたときにも sulogin を起動しようとする。

ユーザには以下のようなプロンプトが出される。

Give root password for system maintenance
(or type Control-D for normal startup):

sulogin は現在の端末か、またはコマンドラインから指定されたデバイス (たいてい /dev/console) に接続する。

-p オプションが与えられると、シングルユーザのシェルは、 argv[0] の最初の文字にダッシュ ‘-’ を付けたかたちで起動される。 これによって、ほとんどのシェルはログインシェルとして動作する。 デフォルトではこれは行われないので、シェルは起動時に /etc/profile$HOME/.profile を読み込まない。

ユーザがシングルユーザシェルを終了した後、 あるいはプロンプトに対して Control-d を押した (シェルを起動しなかった) 後には、 システムは (動作を継続して) デフォルトのランレベルにブートする。

環境変数

sulogin は環境変数 SUSHELL または sushell を探し、起動するシェルを決定しようとする。 これらの環境変数が設定されていないと、 /etc/passwd に書かれている root のシェルを 起動しようとする。 これにも失敗すると、 /bin/sh を起動する。

この機能は、init の -b オプションと一緒に用いると非常に便利である。 システムをシングルユーザモードで起動し、 ルートファイルシステムを read/write でマウントし、 静的にリンクされた特殊な「フェイルセーフ」シェルを使うには、 次のようにする (この例は LILO のブートプロンプトに与えることができる)。

boot: linux -b rw sushell=/sbin/sash

探索方法

sulogin は、まず通常の方法を用いて root のパスワードをチェックする。 -e オプションが指定されると、 sulogin は以下のファイルを調べて root のパスワードを見つけようとする。 これらが壊れていたり、存在しない場合は、 最後の手段として、 root のパスワードを訊ねないままシェルのプロンプトを表示してしまう。

/etc/passwd,
/etc/shadow (存在する場合)

著者

Miquel van Smoorenburg <miquels AT cistron DOT nl>

関連項目

init(8), inittab(5)

pdf