在Linux中,由於每個程序都是在后台執行的,如果直接按下電源開關關機時,則數據可能就此中斷。
且,若不正常關機,可能會造成文件系統的毀損,所以關機時,我們要注意下面幾件事:
(1)查看系統的使用狀態
目前有誰在線:who
網絡的聯機狀態:netstat -a
后台執行的程序:ps -aux
(2)通知在線用戶關機的時刻
eg:shutdown
(3)正確的關機命令使用
將數據同步寫入硬盤中的命令:sync
重啟,關機:shutdown,reboot,poweroff
下面我們來演示一下這些命令:
sync:
當你的系統不正常關機時,由於數據尚未被寫入硬盤當中,會造成數據的更新不正常。這時就需要sync這個這個命令,多執行幾次總會比較放心。
shutdown:
可以自由選擇關機模式:是要關機、重啟或進入單用戶操作模式
可以設置關機時間:可以設置某一個特定的是時間關機
可以自定義關機消息:在關機之前,將自己設置的消息傳送給在線用戶
僅發出警告消息
-t sec :-t后面加秒數,過幾秒后關機
-k :發送警告消息,不關機
-r :在將系統的服務停掉之后重啟
-h :在將系統的服務停掉之后關機
-n :不經過init程序,直接以shutdown的功能關機
-c :取消已經在進行的shutdown命令內容
(時間:一定要加入的參數,指定系統關機的參數)
示例:
指定時刻關機(若此時刻已過,則到第二天此時刻)
立即重啟:
原因是我上一個關機指令正在執行
在過10分鍾自動關機
再過30分鍾系統會重啟,並顯示后面的消息給所有在線的用戶
僅發出警告信件的參數,並不會關機
提示:ctrl+c 可以停止當前指令的運行。eg:
重啟、關機(reboot、halt、poweroff)
其實這三個命令調用的函數庫都差不多,讀者可以嘗試man一下,是相同的。
切換執行等級 : init
系統運作的模式,分為命令行界面(run level 3)及圖形界面模式(run level 5)。Linux有七種執行等級,其中有關機關機與重啟。
run level 0:關機
run level 6:重啟
所以我們可以用如下命令關機: