再起動はinit 6と同じですか?


22

リブートは、ubuntuのinit 6と同じですか?

Amazon EC2でUbuntu 12.04を実行しています。ボックスにssh'edするとrunlevel、次のように入力できます。

N 2

見てみるman rebootと:

--forceで呼び出された場合、またはランレベル0または6の場合、このツールはreboot(2)システムコール自体を呼び出し、システムを直接リブートします。それ以外の場合、これは適切な引数を指定してshutdown(8)ツールを呼び出すだけです。

私が読んだ場合、私man shutdown 8は見る:

シャットダウンは、システムを安全な方法で停止するよう手配します。ログインしているすべてのユーザーには、システムがダウンしていることが通知され、TIMEの最後の5分以内に、新しいログインが禁止されます。

rebootとの違いについての私の基本的な理解init 6は:

  • 他のディストリビューションやおそらく古いディストリビューションでrebootは、ディスクをアンマウントし、基本的にシャットダウンスクリプトを実行せずに電源スイッチをフリックします。
  • init 6/etc/init/rc.*システムのランレベルが低下するため、すべてのシャットダウンスクリプトが実行されます。
  • Ubuntuの新しいバージョンのrebootコマンドなし--forceか、-f基本的には同じことをするだろうし、shutdownコマンドを実行しますinit 6
  • おそらくより安全でクロスディストリビューションとして機能するinit 6代わりに、使用する習慣を身に付けたreboot方が良いでしょうが、デフォルトの動作はreboot、誰かがそれを使用した場合にエラー/データ損失を防止するために変更されました。

それは正しいですか?そうでない場合、私は何が欠けていますか?

回答:


23

以下の場合を除き、のinit 6代わりに使用する説得力のある理由はありませんreboot

  • 何らかの理由でreboot実行可能ファイルが欠落している、または
  • システムがダウンしていることをユーザーに通知するのを避けようとしています。

reboot(実行しない限りreboot --force)は、実際にはシャットダウンする「ソフトな」方法です。

考慮してください:

init 6/etc/init/rc.*システムのランレベルが低下するため、すべてのシャットダウンスクリプトが実行されます。

しかし、コマンドと呼ばれる、なしフラグが、唯一の直接(経由してシステムを再起動し、システムコールこれらの2つの状況のいずれかに該当する場合):reboot--forcereboot

  • システムはであるランレベル 0(シングルユーザーモード)、そのランレベルのない削減が存在しないことができます何のシャットダウンスクリプトが自動的に実行されていないので、発生は、。
  • システムはランレベル6にあります。システムをランレベル6にするために何をinit 6しますか。また、コマンドinit 6を実行しても実行されないことは何も実行しrebootません。

それ以外の場合は、sudo rebootと同等sudo shutdown -r nowです。これは素晴らしいことをすべて行いますsudo init 6が、次のことも行います。

  • システムがダウンしていることをユーザーに通知します。
  • 新しいログインを防止します(とにかく成功しませんが)。
  • は、より直感的で自己文書化されていsudo init 6ます。

自分だけがログインし、ローカルログインのみがあるシステムを使用init 6している場合、再起動に問題はありません。それがあなたが再起動することを好む方法であるなら、すべての方法で、先に進んでください-あなたはそうすることによって何も害を与えていません。しかし、この方法で客観的に好ましいことも何もありません。

init独自のドキュメントには、システムをシャットダウンまたは再起動する通常の方法ではないと書かれています。initユーザーが実行するとき(を実行するときなどsudo init 6)、実際に実行されることを考慮してtelinitください(を参照man init)。telinit実際にランレベルを変更するものです。そしてman telinit私たちに伝えます:

通常、shutdown(8)ツールを使用して 、システムを停止または再起動するか、シングルユーザーモードにダウンします。


私はUbuntu 13.04とカーネル3.11をインストールしたAlienware X51 dell pcを持っています。$ init 6を実行すると、再起動し、時々BIOSが永久に表示され続けます。再起動コマンドではなくinit 6を使用しているためですか?

1
@YumYumYum使用init 6するとこれが発生する理由がわかりません。のreboot代わりに使用するとinit 6、常にBIOSを通過しますか?
エリアケイガン

1
BIOSファームウェアをA00からA02に更新しました。それ以来、再起動またはinit 6の両方が機能するため、BIOSの問題が発生したようです。ありがとうございました。

rebootUbuntu Server 14.02のシングルユーザーとローカルログインのみで実行が停止することがあります。それは安全、私はいつもんですsyncが続きますかreboot -f
user3549648
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.