halt, reboot, poweroff -
システムを停止する
/sbin/halt [
-n] [
-w] [
-d] [
-f] [
-i]
[
-p] [
-h]
/sbin/reboot [
-n] [
-w] [
-d] [
-f] [
-i]
/sbin/poweroff [
-n] [
-w] [
-d] [
-f]
[
-i] [
-h]
haltは、システムの終了を
/var/log/wtmp
ファイルに記録し、
カーネルにシステムの停止
(halt)、再起動 (reboot)、
電源断 (poweroff)
のいずれかを行うよう命令する。
(訳注: reboot, poweroff は halt
へのリンクであり、
動作はどの名前で起動したかによって決まる。)
システムのランレベルが
0 または
6
でないときに、
すなわちシステムが通常に動作しているときに
halt や
reboot
が呼び出されると、
代わりに
shutdown(8) が (
-h
や
-r
オプションを付けて)
起動される。 詳細は
shutdown(8) の man
ページを参照のこと。
この man
ページではランレベル
0 および 6、
すなわちシステムのシャットダウンスクリプトが動作中の場合
における振舞いを説明する。
- -n
- 再起動または停止する前に
sync しない。
- -w
- 実際には再起動または停止せずに、
wtmpレコード ( /var/log/wtmp
ファイル)
への記録のみを行う。
- -d
- wtmpレコードへの記録を行わない。
-n
オプションを指定した場合は、
自動的に -d
オプションも付けられる。
- -f
-
shutdown(8)
を起動せず、強制的に
halt または reboot する。
- -i
- 停止または再起動する直前に
全てのネットワークインターフェースを切断する。
- -h
- 停止または再起動する直前にシステムのすべてのハードディスクを
standby モードにする。
- -p
- システムを停止する時に、電源を切る。
halt が poweroff
という名前で起動された時はこれがデフォルトである。
スーパーユーザでない人が用いた場合は
`must be superuser'
というメッセージが表示される。
古い版の
sysvinit では、
reboot や
halt
を直接呼び出してはならなかった。
2.74
版からは、システムのランレベルが
0 か 6 でない場合には
halt や
reboot は
shutdown
を起動する。
このため
halt や
reboot
が現在のランレベルを認識できない場合
(例えば
/var/run/utmp
が正しく初期化されていない場合)
には
shutdown
が起動されることになるが、
これは望む動作とは異なるかもしれない。
強制的に
halt や
reboot
を実行したい時には
-f
オプションを使うこと。
-h
オプションは停止または電源断の直前にすべてのハードディスクを
standby モードにする。
現在ではこの機能は IDE
ドライブに対してのみ実装されている。
ハードディスクを standby
モードにすると、
副作用としてディスクの
write
キャッシュがフラッシュされる。
これは IDE
ドライブでは重要なことなのである。
カーネル自身は電源断の前に
write
キャッシュのフラッシュを行わないからである。
halt
プログラムはすべての
IDE
ディスクデバイスを検索するため、
/proc/ide/hd* を用いる。
すなわち
halt や
poweroff
を呼ぶときには /proc
がマウントされている必要がある。
さもないと
-h
オプションは何もしない。
Miquel van Smoorenburg,
[email protected]
shutdown(8),
init(8)