私は過去数十年間、さまざまなバージョンのUnix(類似)オペレーティングシステム/ Linuxで、halt
andshutdown
コマンド(および実行レベルやsystemctlターゲットなどの同等項目)の歴史と実装について興味深いスレッドを読みました。目的、ユースケース、および実装、およびそれらのhalt
間shutdown
の関係がリリースごとに異なり、依然としてさまざまであることを明確にするコンテンツです。
しかし、非常に具体的な質問があります。halt
オペレーティングシステムを応答しない状態または存在しない状態(たとえば、シングルユーザーシェルではない)で終了し、コンピュータシステム自体の電源を入れる実装を使用する現在/最新の実際のユースケースはありますか?
ほとんどの最新ハードウェアには、電源を切るソフトウェアメカニズムがあると思うので質問します。したがって、システムを手動でシャットダウン/再起動する前にOSを停止する必要があることは想像できません。 (「ほとんど」という表現が間違っているか、OSのシャットダウン時にシステムを手動でシャットダウン/再開することが実際に利点がある場合は共有してください。) また、停止を使用して「メンテナンス」を行うことができるという内容も読みました。まだ電源が入っているコンピュータシステムでこれについての詳細な説明を見たことはありません。電源が入っていないコンピュータシステムでどのような「メンテナンス」を実行できるか(そしてそれが有益であるか)、オペレーティングシステム(または他のソフトウェアインタフェース(BIOSなど))が実行されていますか?
halt
参考までに、以下はVSディスカッションで読むより便利なスレッドです。ただし、システムの電源を切らずにオペレーティングシステムをシャットダウンする実装の最新の使用については、実際にはshutdown
議論しません。halt
ベストアンサー1
システムを直ちに再起動したり、電源を切らずにシステムを停止することは、実際にはほとんど役に立ちません。デフォルトでは、電力を電子的に制御することはできませんが、管理者が物理的な電源オフスイッチを操作する必要があるシステムがあったために存在しました。
私が想像できる唯一のシナリオの1つは、システムが長年にわたって継続的に実行されてメンテナンスを実行する必要がありますが、再起動が実行されない可能性があるため、ディスクが回転するのを恐れている場合です。システムを停止すると、すべてのデータ処理が停止し、一部のケーブルが安全に切断される可能性がありますが、ディスクは回転し続けます。
長い間、Linuxカーネル2.2/2.4日に戻って、iptables
システムが停止してもカーネルのファイアウォール実装(または以前のバージョンの1つ)が機能し続けていることに誰かが気づきました。これは、ファイアウォールシステムの攻撃面を最小限に抑える極端なケースとして役立ちます。ユーザースペースが不足するとファイアウォール構成を操作する簡単な方法はなく、そうでないとファイアウォールを攻撃する方法は非常に制限されます。残念ながら、最新のカーネルは、システムの停止時にプロセッサを低電力停止状態に切り替える可能性が高いため、このトリックは機能しなくなる可能性があります。