Linux
reboot , init 6 和 shutdown -r now 有什麼區別?
我只想知道 in 之間的區別
reboot
init 6
shutdown -r now
哪個是最安全和最好的?
它們沒有區別。在內部他們做同樣的事情:
reboot
使用shutdown
命令(使用 -r 開關)。關閉命令用於殺死所有正在執行的程序,解除安裝所有文件系統,最後告訴核心發出 ACPI 電源命令。來源可以在這裡找到。在較舊的發行版中,reboot 命令通過發出SIGKILL
信號來強制程序退出(仍然可以在源中找到,可以使用-f
選項呼叫),在最近的發行版中,它預設為更優雅和更友好的初始化init 1 -> shutdown -r
。這可確保守護程序在關閉前自行清理。init 6
告訴init
程序關閉所有在 init 文件中寫入的衍生程序/守護程序(以它們啟動的相反順序),最後呼叫shutdown -r now
命令重新啟動機器今天沒有太大區別,因為兩個命令的作用完全相同,並且它們尊重用於通過呼叫關閉腳本來啟動服務/守護程序的初始化腳本。
reboot -f -r now
下文所述的除外從聯機幫助頁中有一個關於為什麼
reboot -f
不安全的小解釋:-f,--強制 強制立即停止、關機、重啟。不要聯繫初始化系統。
編輯:
忘了提一下,在即將發布的 RHEL 發行版中,您應該使用新
systemctl
命令發出斷電/重啟。如手冊頁所述reboot
,shutdown
它們是“僅用於兼容的遺留命令”。並且該systemctl
方法將是唯一安全的方法。