Linux重啟命令介紹

cdfarsight1發表於2023-12-29

下面介紹在 Linux 作業系統中重啟和關閉相關的命令:shutdown、reboot、init、halt、poweroff、systemctl,你可以根據需要來選擇適合的 Linux 命令關閉或重新啟動系統。其中 shutdown、halt、poweroff、reboot 命令是用來停機、重啟或切斷電源, systemctl 命令管理 systemd,是 Linux 系統和伺服器的管理程式。

使用 shutdown 命令關閉和重啟 Linux 系統

shutdown 命令用於斷電或重啟本地和遠端的 Linux 機器。它為高效完成作業提供多個選項。如果使用了時間引數,系統關閉的 5 分鐘之前,會建立 /run/nologin 檔案,以確保後續的登入會被拒絕。

通用語法如下:

# shutdown [OPTION] [TIME] [MESSAGE]

執行下面的命令來立即關閉 Linux 機器。它會立刻殺死所有程式,並關閉系統:

# shutdown -h now

-h:如果不特指 -halt 選項,這等價於 -poweroff 選項。

另外我們可以使用帶有 -halt 選項的 shutdown 命令來立即關閉裝置:

# shutdown --halt now

或者:

# shutdown -H now

-H, --halt:停止裝置執行。

另外我們可以使用帶有 poweroff 選項的 shutdown 命令來立即關閉裝置:

# shutdown --poweroff now

或者:

# shutdown -P now

-P, --poweroff:切斷電源(預設)。

如果您沒有使用時間選項執行下面的命令,它將會在一分鐘後執行給出的命令:

# shutdown -h

Shutdown scheduled for THU 2018-11-01 06:42:31 EDT, use 'shutdown -c' to cancel.

其他的登入使用者都能在中斷中看到如下的廣播訊息:

Broadcast message from root@2daygeek.com (THU 2018-11-01 06:41:31 EDT):

The system is going down for power-off at THU 2018-11-01 06:42:31 EDT!

對於使用了 -halt 選項:

# shutdown -H

Shutdown scheduled for THU 2018-11-01 06:37:53 EDT, use 'shutdown -c' to cancel.

對於使用了 -poweroff 選項:

# shutdown -P

Shutdown scheduled for THU 2018-11-01 06:40:07 EDT, use 'shutdown -c' to cancel.

可以在您的終端上敲擊 shutdown -c 選項取消操作:

# shutdown -c

其他的登入使用者都能在中斷中看到如下的廣播訊息:

Broadcast message from root@vps.2daygeek.com (THU 2018-11-01 06:41:35 EDT):

The system shutdown has been cancelled at THU 2018-11-01 06:42:35 EDT!

新增時間引數,如果你想在 N 秒之後執行關閉或重啟操作。這裡,您可以為所有登入使用者新增自定義廣播訊息。例如,我們將在五分鐘後重啟裝置:

# shutdown -r +5 "To activate the latest Kernel"

Shutdown scheduled for THU 2018-11-01 07:13:16 EDT, use 'shutdown -c' to cancel.

執行下面的命令立即重啟 Linux 機器。它會立即殺死所有程式並且重新啟動系統:

# shutdown -r now

-r, --reboot: 重啟裝置。

透過 reboot 命令關閉和重啟 Linux 系統

reboot 命令用於關閉和重啟本地或遠端裝置。reboot 命令擁有兩個實用的選項。

它能夠優雅的關閉和重啟裝置(就好像在系統選單中惦記重啟選項一樣簡單)。

執行不帶任何引數的 reboot 命令來重啟 Linux 機器:

# reboot

執行帶 -p 引數的 reboot 命令來關閉 Linux 機器電源:

# reboot -p

-p, --poweroff:呼叫 halt 或 poweroff 命令,切斷裝置電源。

執行帶 -f 引數的 reboot 命令來強制重啟 Linux 裝置(這類似按壓機器上的電源鍵):

# reboot -f

-f, --force:立刻強制中斷,切斷電源或重啟。

透過 init 命令關閉和重啟 Linux 系統

init(“initialization” 的簡寫)是系統啟動的第一個程式。

它將會檢查 /etc/inittab 檔案並決定 linux 執行級別。同時,允許使用者在 Linux 裝置上執行關機或重啟操作. 這裡存在從 0 到 6 的七個執行等級。

執行以下 init 命令關閉系統:

# init 0

0: 停機 – 關閉系統。

執行下面的 init 命令重啟裝置:

# init 6

6:重啟 – 重啟裝置。

透過 halt 命令關閉和重啟 Linux 系統

halt 命令用來切斷電源或關閉遠端 Linux 機器或本地主機。中斷所有程式並關閉 cpu:

# halt

透過 poweroff 命令關閉和重啟 Linux 系統

poweroff 命令用來切斷電源或關閉遠端 Linux 機器或本地主機。poweroff 很像 halt,但是它可以關閉裝置硬體(燈和其他 PC 上的其它東西)。它會給主機板傳送 ACPI 指令,然後訊號傳送到電源,切斷電源。

# poweroff

透過 systemctl 命令關閉和重啟 Linux 系統

systemd 是一款適用於所有主流 Linux 髮型版的全新 init 系統和系統管理器,而不是傳統的 SysV init 系統。

systemd 相容與 SysV 和 LSB 初始化指令碼。它能夠替代 SysV init 系統。systemd 是核心啟動的第一個程式,並持有序號為 1 的程式 PID。

它是一切程式的父程式,Fedora 15 是第一個適配安裝 systemd (替代了 upstart)的發行版。

systemctl 是命令列下管理 systemd 守護程式和服務的主要工具(如 start、restart、stop、enable、disable、reload & status)。

systemd 使用 .service 檔案而不是 SysV init 使用的 bash 指令碼。 systemd 將所有守護程式歸與自身的 Linux cgroups 使用者組下,您可以瀏覽 /cgroup/systemd 檔案檢視該系統層次等級:

# systemctl halt

# systemctl poweroff

# systemctl reboot

# systemctl suspend

# systemctl hibernate

結語

shutdown、reboot、init、halt、poweroff、systemctl 命令可以達到重啟和關閉 Linux 系統目的,都是在命令列下操作。如果你對命令列比較熟悉,那這樣做是最便捷的,也是最安全的。同時重啟和關閉系統的命令不多,你可以選擇其中拿手的來完成任務。


來自 “ ITPUB部落格 ” ,連結:https://blog.itpub.net/70030295/viewspace-3002211/,如需轉載,請註明出處,否則將追究法律責任。

相關文章