名 前
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.nl>