.\" Copyright (c) 1980, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)reboot.2 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/sys/reboot.2,v 1.18 2003/09/08 19:57:16 ru Exp % .\" .\" $FreeBSD$ .Dd June 4, 1993 .Dt REBOOT 2 .Os .Sh 名称 .Nm reboot .Nd システムをリブートするかまたはプロセッサを停止する .Sh ライブラリ .Lb libc .Sh 書式 .In unistd.h .In sys/reboot.h .Ft int .Fn reboot "int howto" .Sh 解説 .Fn reboot システムコールはシステムをリブートします。 スーパユーザだけが必要に応じてマシンをリブートできます。 しかし、回復不可能なシステム障害の場合は、リブートは自動的に起動されます。 .Pp .Fa howto 引数はオプションのマスクです。 システムコールインタフェースはインクルードファイル .In sys/reboot.h 内に定義された次のオプションを受付け、 新しいカーネルまたは新しいブートストラップと init プログラムに渡されるようにします。 .Bl -tag -width RB_INITNAMEA .It Dv RB_AUTOBOOT デフォルト。 システムが通常の方法でリブートするようにします。 .It Dv RB_ASKNAME ブートストラッププログラム自体によって解釈され、 どのファイルをブートすべきかについて、 コンソールにプロンプトを表示するようにします。 通常、システムはファイル .Dq Ar xx Ns No (0,0)kernel からブートされます。 ここで、 .Ar xx はファイル名を入力するようにプロンプトを出さない場合の、 デフォルトのディスク名です。 .It Dv RB_DFLTROOT コンパイル時に指定されたルートデバイスを使用します。 通常、システムは、 可能であればブートされたデバイスをルートデバイスとして使用します (デフォルトの動作は、システムがどのドライブからロードされたかを判別する ブートストラッププログラムの能力に依存します。 これはすべてのシステムで可能なわけではありません)。 .It Dv RB_DUMP リブートの前にカーネルメモリをダンプします。 詳細については、 .Xr savecore 8 を参照してください。 .It Dv RB_HALT プロセッサは単に停止されます。 リブートは起きません。 このオプションは注意して使用する必要があります。 .It Dv RB_POWEROFF システム停止の後、シャットダウンコードは、可能であれば電源を切ります。 これにはハードウェアのサポートが必要です。 .It Dv RB_INITNAME システムがリブートした際に、 .Pa /sbin/init 以外の init プログラム .Pf ( Xr init 8 を参照) が実行されるよう指定するオプションです。 このスイッチは現時点では無効です。 .It Dv RB_KDB シンボルテーブルをロードし、システム内の組み込みデバッガを有効にします。 カーネルがデバッグ用に構成されていない場合、このオプションは意味を持ちません。 これ以外のいくつかのオプションは、このオプションと組み合わせると 通常と異なる意味を持つようになりますが、それらの機能を使用することは .Fn reboot システムコールでは不可能な場合があります。 詳細については、 .Xr ddb 4 を参照してください。 .It Dv RB_NOSYNC 通常、プロセッサが停止されるかまたはリブートされる前に、ディスクへまだ 書き込まれていないデータがあればそれを書き込みます .Pf ( Xr sync 8 を参照)。 このオプションは、ファイルシステムへの変更が手作業で行われた場合や、 プロセッサが暴走している場合、有用なことがあります。 .It Dv RB_RDONLY 初期段階で、ルートファイルシステムを読取り専用でマウントします。 現在はこれがデフォルトであり、このオプションは無意味なものになっています。 .It Dv RB_SINGLE 通常のリブート処理ではまず自動的にディスクの一貫性チェックが行われ、 次いでマルチユーザ環境へ移行するようになっています。 .Dv RB_SINGLE は、これを行わず、 システムをコンソール上のシングルユーザシェルでブートします。 .Dv RB_SINGLE は、実際にはブートし直されたシステムで .Xr init 8 プログラムによって解釈されます。 .El .Pp オプションを指定しない場合 (すなわち、 .Dv RB_AUTOBOOT が使用される場合)、システムは、プロセッサが所定の方法で選択した ユニット 0 のディスクのルートファイルシステムにある .Dq kernel というファイルからリブートされます。 この際、通常はディスクの一貫性チェックが自動的に実行されます .Pf ( Xr fsck 8 を参照)。 .Sh 戻り値 正常に処理が終了した場合、この呼び出しは戻ることはありません。 そうでない場合は -1 が返され、エラーがグローバル変数 .Va errno 内に返されます。 .Sh エラー .Bl -tag -width Er .It Bq Er EPERM 呼び出し側がスーパユーザではありません。 .El .Sh 関連項目 .Xr crash 8 , .Xr halt 8 , .Xr init 8 , .Xr reboot 8 , .Xr savecore 8 .Sh バグ HP300 システムは、 .Dv RB_DFLTROOT と .Dv RB_KDB のどちらもサポートしていません。 .Sh 歴史 .Fn reboot システムコールは .Bx 4.0 で登場しました。