.\" Copyright 1992, 1993 Rickard E. Faith (faith@cs.unc.edu) .\" May be distributed under the GNU General Public License .\" " for emacs's hilit19 mode :-) .\" .\" Japanese Version Copyright (c) 2001 Yuichi SATO .\" all rights reserved. .\" Translated Mon Feb 26 22:49:20 JST 2001 .\" by Yuichi SATO .\" Updated Tue Jun 5 JST 2001 by Kentaro Shirakata .\" .TH SIMPLEINIT 8 "25 February 2001" "Linux 0.99" "Linux Programmer's Manual" .SH 名前 simpleinit \- プロセス制御の初期化を行う .SH 書式 .B "init [ single ] [ script ]" .SH 説明 .B init は Linux ブートシーケンスの最終ステップとして起動される。 .B single オプションが使われた場合、またはファイル .I /etc/singleboot がある場合、 .IR /bin/sh を起動することでシングルユーザーモードに入る。 ファイル .I /etc/securesingle がある場合、シングルユーザーモードを開始するために root パスワードが必要とされる。 root パスワードがない場合、または .I /etc/passwd がない場合、パスワードのチェックは省かれる。 ファイル .I /etc/TZ がある場合、その内容が読み込まれ、 .B simpleinit によって開始される各プロセスの環境変数 TZ を設定するために使われる。 「この機能」はコンパイル時に設定されている場合にのみ使用可能である。 通常は必要とされない。 シングルユーザーモードが終了した後、 .I /etc/rc ファイルが実行される。 .I /etc/inittab にある情報は、プロセスを開始するために使われる。 別の方法として、他のブートスクリプトを実行するように \fI/etc/inittab\fP ファイルを設定してもよい。 詳細は下記を参照すること。 .SH INITTAB ファイル Linux コミュニティではいくつもの init プログラムが出現しているので、 通常 .BR inittab (5) の man ページに書かれている .I /etc/inittab ファイルについてのドキュメントをここに載せる: フォーマットは次のようになっている。 .RS .B bootprog=ファイル .B fileprefix=文字列 .B PATH=検索パス .B INIT_PATH=検索パス .B "tty ライン:termcap エントリ:getty コマンド" .B finalprog=パス .RE 以下に例を示す: .nf .RS bootprog = fileprefix = /sbin/init.d/ PATH = /usr/sbin:/usr/bin:/sbin:/bin INIT_PATH = /sbin/init.d tty1:linux:/sbin/getty 9600 tty1 tty2:linux:/sbin/getty 9600 tty2 tty3:linux:/sbin/getty 9600 tty3 tty4:linux:/sbin/getty 9600 tty4 # tty5:linux:/sbin/getty 9600 tty5 # ttyS1:dumb:/sbin/getty 9600 ttyS1 # ttyS2:dumb:/sbin/getty -m -t60 2400 ttyS2 finalprog = /sbin/rc.xdm .RE .fi .B # 文字で始まる行はコメントとして扱われる。 現在のところ Linux コミュニティでは .B getty (8) のようなコマンドがいくつかあるため、 あなたが使っている .B getty (8) コマンドのドキュメントを参照すること。 \fBbootprog\fP の値は、\fBfileprefix\fP の値に追加される。 その結果は、実行するブートプログラム (スクリプト) を指定するのに使われる。 指定されない場合、デフォルトは \fI/etc/rc\fP である。 ブートプログラムがディレクトリである場合、 ディレクトリツリーにある全てのスクリプトが並列に実行される。 実行順の制御と依存性の管理をエレガントにする方法の詳細は、 \fBneed\fP(8) プログラムを参照すること。 \fBPATH\fP の値は、 子プロセス (ブートスクリプト)の環境変数 PATH に割り当てられる。 (絶対パスが与えられない場合) \fBINIT_PATH\fP は実行するスクリプトの場所を見付けるために simpleinit(8) 自身によって使われる。 デフォルトの値を unset して、ブートプログラムがディレクトリの場合、 そのディレクトリが使われる。 最後に、このパスでスクリプトが見つからなかった場合、 標準の \fBPATH\fP が使われる。 \fBPATH\fP と \fBINIT_PATH\fP を分けることにより、 ブートスクリプトは同じ名前のプログラムを 衝突や絶対パスの指定なしに起動できる。 \fBfinalprog\fP の値は、 全ての \fBgetty\fP(8) インスタンスが生成された後で 実行されるプログラムのパスを指定する。 ブート時には、"start" という 1 個の引き数が渡される。 シャットダウン時にも、"stop" という引き数で呼ばれる。 .SH シグナル \fBsimpleinit\fP(8) は、いろいろな方法でシグナルに応答する: .TP .B SIGHUP 設定ファイル \fI/etc/inittab\fP が再度読み込まれる。 .TP .B SIGTSTP プロセスを更に生成するかどうかを決めるトグルを切替える。 .TP .B SIGINT \fBsimpleinit\fP(8) は数回 sync を実行し、 \fBreboot\fP(8) を開始しようとする。 失敗した場合は、システムの \fBreboot\fP(2) コールを実行する。 Linux では、Ctrl-Alt-Del シーケンスが、 システムのリブートではなく、 \fBinit\fP プロセスにシグナルを送るように設定できる (\fBsimpleinit\fP(8) はデフォルトでこのようにしている)。 .TP .B SIGQUIT \fBsimpleinit\fP(8) プログラムの代わりに、 \fBreboot\fP(8) プログラムが実行される。 これにより、\fBinit\fP プロセスの古い i ノードが unlink されない場合でも、 \fBreboot\fP(8) はルートファイルシステムを (読み込みのみで) 正しく再マウントできる。 .SH ファイル .I /etc/inittab .br .I /etc/singleboot .br .I /etc/securesingle .br .I /etc/TZ .br .I /etc/passwd .br .I /etc/rc .SH 関連項目 .BR inittab (5), .BR ctrlaltdel (8) .BR reboot (8), .BR termcap (5), .BR getty (8), .BR agetty (8), .BR shutdown (8), .BR initctl (8) .SH バグ このプログラムは、Linux コミュニティに出現し始めた System V 互換版の init と区別するために、 .B simpleinit と呼ばれる。 .B simpleinit を正しく機能させるためには、 .I init としてリンクするか、同一にするべきである。 .SH 著者 Peter Orbaek (poe@daimi.aau.dk) .br Version 1.20, Werner Almesberger による シングルユーザーモードのパッチ。 .br Richard Gooch .br 依存性のサポート。