tail head cat sleep
QR code linking to this page

manページ  — REBOOT

名称

reboot – システムをリブートするかまたはプロセッサを停止する

内容

ライブラリ

Standard C Library (libc, -lc)

書式

#include <unistd.h>
#include <sys/reboot.h>

int
reboot(int howto);

解説

reboot() システムコールはシステムをリブートします。 スーパユーザだけが必要に応じてマシンをリブートできます。 しかし、回復不可能なシステム障害の場合は、リブートは自動的に起動されます。

howto 引数はオプションのマスクです。 システムコールインタフェースはインクルードファイル <sys/reboot.h> 内に定義された次のオプションを受付け、 新しいカーネルまたは新しいブートストラップと init プログラムに渡されるようにします。
RB_AUTOBOOT デフォルト。 システムが通常の方法でリブートするようにします。
RB_ASKNAME ブートストラッププログラム自体によって解釈され、 どのファイルをブートすべきかについて、 コンソールにプロンプトを表示するようにします。 通常、システムはファイル "xx(0,0)kernel" からブートされます。 ここで、 xx はファイル名を入力するようにプロンプトを出さない場合の、 デフォルトのディスク名です。
RB_DFLTROOT コンパイル時に指定されたルートデバイスを使用します。 通常、システムは、 可能であればブートされたデバイスをルートデバイスとして使用します (デフォルトの動作は、システムがどのドライブからロードされたかを判別する ブートストラッププログラムの能力に依存します。 これはすべてのシステムで可能なわけではありません)。
RB_DUMP リブートの前にカーネルメモリをダンプします。 詳細については、 savecore(8) を参照してください。
RB_HALT プロセッサは単に停止されます。 リブートは起きません。 このオプションは注意して使用する必要があります。
RB_POWEROFF システム停止の後、シャットダウンコードは、可能であれば電源を切ります。 これにはハードウェアのサポートが必要です。
RB_INITNAME システムがリブートした際に、 /sbin/init 以外の init プログラム (init(8) を参照) が実行されるよう指定するオプションです。 このスイッチは現時点では無効です。
RB_KDB シンボルテーブルをロードし、システム内の組み込みデバッガを有効にします。 カーネルがデバッグ用に構成されていない場合、このオプションは意味を持ちません。 これ以外のいくつかのオプションは、このオプションと組み合わせると 通常と異なる意味を持つようになりますが、それらの機能を使用することは reboot() システムコールでは不可能な場合があります。 詳細については、 ddb(4) を参照してください。
RB_NOSYNC 通常、プロセッサが停止されるかまたはリブートされる前に、ディスクへまだ 書き込まれていないデータがあればそれを書き込みます (sync(8) を参照)。 このオプションは、ファイルシステムへの変更が手作業で行われた場合や、 プロセッサが暴走している場合、有用なことがあります。
RB_RDONLY 初期段階で、ルートファイルシステムを読取り専用でマウントします。 現在はこれがデフォルトであり、このオプションは無意味なものになっています。
RB_SINGLE 通常のリブート処理ではまず自動的にディスクの一貫性チェックが行われ、 次いでマルチユーザ環境へ移行するようになっています。 RB_SINGLE は、これを行わず、 システムをコンソール上のシングルユーザシェルでブートします。 RB_SINGLE は、実際にはブートし直されたシステムで init(8) プログラムによって解釈されます。

オプションを指定しない場合 (すなわち、 RB_AUTOBOOT が使用される場合)、システムは、プロセッサが所定の方法で選択した ユニット 0 のディスクのルートファイルシステムにある "kernel" というファイルからリブートされます。 この際、通常はディスクの一貫性チェックが自動的に実行されます (fsck(8) を参照)。

戻り値

正常に処理が終了した場合、この呼び出しは戻ることはありません。 そうでない場合は -1 が返され、エラーがグローバル変数 errno 内に返されます。

エラー

[EPERM]
  呼び出し側がスーパユーザではありません。

関連項目

crash(8), halt(8), init(8), reboot(8), savecore(8)

バグ

HP300 システムは、 RB_DFLTROOT RB_KDB のどちらもサポートしていません。

歴史

reboot() システムコールは BSD 4.0 で登場しました。

REBOOT (2) June 4, 1993

tail head cat sleep
QR code linking to this page


このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.

If you have a problem and you think awk(1) is the solution, then you have two problems.
— David Tilbrook