過去

過去

haltこれらのコマンドの違いは何ですかshutdown

答え1

一般的に人々が使うshutdown注文する。シャットダウンまたは再開する前に、時間遅延と警告メッセージを受け入れます。これは、マルチユーザーシェルサーバーのシステム管理にとって重要であり、ユーザーにダウンタイムを事前に通知することができます。

したがって、コンピュータをすぐに停止/終了するには、次のshutdownコマンドを使用する必要があります(少なくともLinuxおよびFreeBSDでは)。

shutdown -h now

または、カスタム30分の事前警告で再起動してください。

shutdown -r +30 "Planned software upgrades"

もう少し時間をかけてshutdown言います。initランレベル0(停止)または6(再起動)に変更します。 (省略した場合、-hシステム-rはシングルユーザーモード(実行レベル1)に切り替わり、ほとんどのシステムプロセスが終了しますが、実際にシステムが停止するわけではありません。管理者はrootとしてログインしたままにできます。)

システムプロセスが終了し、ファイルシステムがアンマウントされると、システムは自動的に停止/終了または再起動されます。これは以下を使用して行われます。haltまたはrebootコマンド、変更をディスクに同期してから、実際の一時停止/電源オフまたは再起動を実行します。

Linuxでは、システムがシャットダウンプロセスを開始していないhalt場合は、意図した操作を直接実行するのではなく、自動的にコマンドを呼び出します。しかし、rebootshutdownFreeBSDなどのシステムで、このコマンドは最初にジョブを記録します。wtmpそれからまもなくプロセスを終了したり、ファイルシステムを最初にマウント解除せずに直接一時停止/再開を実行します。

答え2

過去

1980年代BSDにはhalt、、、、rebootがありましたshutdown。システム 5 UNIX には BSD 互換ツールセットがあります。しかし、それ自体に別のshutdownコマンドがあります。そしてまったくないか、haltまったくrebootありません。 (一部のSystem 5バリアントにはSCO XENIXと同じものがありますhaltsys。)

BSDhaltrebootコマンドは低レベルで強力でシンプルです。これ認められるBSDシステムをシャットダウンする方法は、ユーザーにメッセージを送信する、サービスのシャットダウン、ログエントリを書き込む、ログインを無効にするなど、予想されるすべてのタスクをshutdown実行するコマンドです。wall

shutdownBSDは「exes halt/」とシステム5世界で注意して使用しなければならないという通念の源ですが、 / はただ便利な略称にすぎないというreboot反対の習慣が学習されました。 :「BSD互換パック」と変わりません。彼らはすべて結局そうしました。haltreboot/usr/ucb/haltshutdown -hinit 0

追加読書

今日

今日、私たちはさまざまなシステム管理ツールのセットを持っています。 BSDは1990年代にAT&Tismを削除したにもかかわらず、まだツールセットを持っています。 Miquel van Smoorenburgは1992年にLinux init+および関連ツールを書き直し、rc実際にはUNIX System 5のソフトウェアではありませんが、人々はそれを「System 5 init」と呼びますinit。しかもシステム突然現れるおやつ、それぞれ彼らだけの悟り、、、、、など。halt​​rebootfasthaltfastboot

ツールセットも絶えず発展して変化しています。 1980年代のオペレーティングシステムには存在しなかったコマンドが現在存在しますpoweroff。なぜなら、ほとんどの最新マシンのCPUは自分の電力を制御できなかったからです。特に Linux ツールセットは BSD コマンドを取得しましたが、UNIX System 5 の BSD 互換性ツールと同様、まったく同じようには機能しません。

haltこの平坦化により、私たちは次の点に達しましたshutdown最大同じ。ただし、詳細はツールセットごとに異なり、各ツールセットのメカニズムも若干異なります。

また、このコマンドセットは互換性オプションでいっぱいになり、人々がNoshのマニュアルページに書いたかのように、矛盾したコマンドをコンピュータに発行できるというかなり厄介な立場reboot --haltにあります。そして命令。 ☺poweroff --reboothaltfasthaltrebootfastbootpoweroff

システムツールセット

halt、、、、rebootおよびpowerofftelinitshutdown1つのプログラムにすべて含める。実際にはsystemd独自のプログラムですsystemctl。これには複数のコマンドラインパーサ、これらのコマンドのさまざまなコマンドライン構文、および独自の構文がありますが、ほとんどが内部的に1つのコードパスに入ります。コマンドオプションを使用してジョブをhaltトリガーするのとshutdownコマンドオプションを使用して同じジョブをトリガーすることには違いはありません。

systemdは考慮しません構造モード(これはsystemdの人々によって名前が変更されました。シングルユーザーモード)はシャットダウン状態になり、これらのコマンドを使用してその状態に達することはできません。オプションがないshutdown nowと同じですpoweroff

追加資料:

BSD

BSDは1980年代の意味をほとんど維持しています。 haltしたがって、shutdown非常にいいえ対応するツールセットの等価物。別のプログラムhaltであり、reboot低レベル、直接、強烈な状態を維持します。また、別のプログラムでもshutdownある場合は、シャットダウンのスケジュール、メッセージの作成、ジョブのログ記録、ログインの無効化など、poweroffすべての便利なタスクを実行できます。wall

BSDツールセットでは、shutdown/従来の最終システム状態変更を実行するために/poweroff呼び出しを終了します。通常、「execs /」は実際にはNetBSDとOpenBSDでまだ機能していると考えられています(現在はしばしば不正確です)。ただし、FreeBSD / TrueOS / DragonFlyBSDでは、このオプションを使用している場合にのみこれが発生します。そのようなBSDではhaltrebootshutdownhaltreboot-o両方この手順のうち通常最終的なシステム状態の変更は、プロセス#1にさまざまな信号(、、および)を送信することによって INT行われます。USR1するUSR2initみんなこれらのシステムのシステム状態管理。

これらすべてで、Noneオプションは、またはとshutdown now同じではありません。 BSDへの切り替えhaltrebootpoweroffシングルユーザーモードから切り替えることができます。後ろに到着マルチユーザーモード

追加資料:

  • shutdownシステム管理者マニュアル。 NetBSD のマニュアルページ。 2011年11月4日。
  • reboothalt。 OpenBSD のマニュアルページ。 2016年9月3日。
  • shutdown。 FreeBSD のマニュアルページ。 2016年9月21日。
  • reboot、、、、haltfastbootfasthalt。 FreeBSD のマニュアルページ。 2017年3月19日。
  • shutdownシステム管理者マニュアル。 DragonFlyBSD のマニュアルページ。 2016年9月29日。
  • reboot、、、、haltfastbootfasthaltシステム管理者マニュアル。 DragonFlyBSD のマニュアルページ。 2016年9月29日。

スナックツールセット

noshシステム管理ツールセットでは、、、、、haltおよびfasthaltpoweroffすべて1つのプログラムfastpoweroffですrebootfastboot通常、単に次のものshutdownと関連付けられている以前のバージョンと互換性のあるシムです。反対知恵を得ました。このオプションを使用すると、反対側--forceに接続されます。system-control

したがって、--forceこの「BSD / System 5 Compatibility」コマンドセットはただ。haltshutdownshutdown

追加資料:

スタートアップツールセット

noshと同様に、BSD知恵の反対は新しいシステム管理ツールセットにも適用されます。 halt、 、rebootpoweroffともに一般的に接続されるプログラムです。このオプションを使用するshutdownと、それ自体がシステムコールを実行します。--forcereboot()

したがって、このツールセットのコマンドとコマンド(同等のオプションを含む)の間に違いはありません(存在しません)--force。同様に、haltshutdownshutdown nowhaltrebootpoweroffシングルユーザーモード引く代わりに。

追加資料:

Linuxシステム5+initツールrcセット

繰り返しますが、このツールセットで許可されているBSDの通念とは異なり、アプリケーションはおよびであり、halt単にreboot接続されますshutdown。ただし、システムがすでに電源がオフになっているか停止している「実行レベル」状態にある場合は除外されます。この場合、これらのコマンドは実際に最終的なシステム状態の変更は次のようになります。実行。 shutdownこれは順番にに接続されますinit

繰り返しますが、違いはありません(システムすでにほぼ閉じています)前者haltshutdown後者を呼び出すだけです。はい、繰り返しますが、システムを起動するために必要なオプションはありませんshutdown nowhalt、、すべてオプションが設定されているため、最終的に呼び出すことはできrebootません)。poweroffシングルユーザーモード引く代わりに。

答え3

私はこれがあなたが使用しているUNIX / Linuxのバージョンによってある程度変わると思います。 Centos(および他の最新のLinuxでも利用可能)では、ストップコールを終了します(そうでない場合)。ランレベル0または6)これはシステムを完全にシャットダウンします。 Solaris 10では、一時停止ははるかに深刻です。単にディスクキャッシュをフラッシュしてシステムの電源を切るだけです。スクリプトを実行または終了しようとしません。シングルモード機能施設。

答え4

AWS EC2を使用している場合:AWSでshutdown 止める例えば、halt 終了それ。

関連情報