停止與「shutdown -H」相同,poweroff 與「shutdown -P」相同嗎?

停止與「shutdown -H」相同,poweroff 與「shutdown -P」相同嗎?

我還沒有找到該命令的兩個選項之間差異的明確答案shutdown

halt與 相同 與shutdown -Hpoweroff相同嗎shutdown -P

答案1

這有點歷史了。

halt在 ACPI 之前使用(今天將為您關閉電源)*。它會停止系統,然後列印一條訊息,大意是「現在可以關閉電源了」。當時有實體開關,而不是現代電腦的組合 ACPI 控制電源按鈕。

poweroff,自然會停止系統,然後呼叫 ACPI power off。

* 現在halt已經足夠智能,poweroff如果啟用了 ACPI,就會自動呼叫。事實上,它們現在在功能上是等效的。

答案2

它們不是同一件事,只是非常密切相關。在實踐中,除非您想指定關閉的特定時間或強制立即不乾淨的重新啟動/停止/斷電,否則無論您運行shutdown -h還是halt...或shutdown -rvs 都並不重要reboot。過去事情並不是那麼方便,但這就是現在的工作方式(許多歧義或用戶錯誤的機會已被刪除/消除)。

/sbin/shutdown做很多「清理」工作,例如通知用戶,在系統關閉時阻止新的登入。它還可以被告知在某個時間或 XX 分鐘內關閉系統 - 經常警告登入用戶即將關閉。

它還將運行等級更改為0( halt/ poweroff) 或6( reboot),這會觸發系統停止正在運行的服務、卸載磁碟等,為實際的停止、斷電或重新啟動做好準備。

當所有這些完成後,它會調用/sbin/halt/sbin/reboot/sbin/poweroffrebootpoweroff通常是 的符號鏈接halt,將它們分別解釋為halt -rhalt -P)。

但請注意,如果halt//rebootpoweroff系統不在運行層級時被調用06那麼它們將調用shutdown來完成其工作,除非使用-f或選項。force

(如何解釋運行級別的詳細資訊可能因發行版而異,但0和 的6使用方式如 Debian 和 Debian 衍生品(如 Ubuntu)中所述)。

shutdown請參閱和的手冊頁以halt獲取更多資訊。

halt最後,狀態和狀態之間的區別poweroff在於,它halt會執行所有操作,直到實際關閉機器電源(在某些類型的硬體上,這意味著它會進入ROM 引導程式或類似的程式。在大多數PC在硬體上,它只是停止),同時poweroff完成最後一步和關閉。 reboot當然,會進入暫停狀態,然後重新啟動電腦。

順便說一句,預設值通常是poweroffreboot,但您可以使用-H作為參數來shutdown使其停止。這在基於 PC 的 Linux 機器上不是很有用(但在具有韌體啟動監視器的機器上很有用,例如 sparc 機器。它可能在具有 EFI 命令列的較新機器上變得有用)。

相關內容