Linux 安全關機——shutdown

原因:

  1. 由於Linux是多用戶,多任務操作系統,其所有程序或服務都是在後臺運行,當前用戶使用時,後臺可能也有很多用戶在使用;
  2. 關於數據,系統在處理數據的時候,基本上都是先保存在內存中,在一定時間後才會寫入硬盤,做持久化;

基於以上兩個要求,安全關機要做下以下:

  1. 觀察系統狀態:who --> 當前在線用戶;netstat -a -->網絡狀態;ps -aux -->當前後臺執行的程序;
  2. 手動同步內存數據到硬盤做持久化 : sync 命令
  3. 通知在線用戶關機時間 : shutdown 命令可實現
  4. 使用正確的關機命令 : shutdown 、 reboot等

Shutdown 命令詳解:

可實現的功能:

  1. 自由選擇關機模式: 關機?重啟?進入單用戶械?
  2. 設置關機時間: 定時或立刻?
  3. 自定義關機信息:將關機信息發送給在線用戶
  4. 僅發出警告,並不關機: shutdown 實現
  5. 是否要用fsck檢查文件系統

語法:

shutdown [-t 秒] [-arkhncfF] [時間] [警告信息]

參數說明,如果不加入時間參數,則會進入單用戶模式:

  1. -t sec : 多少秒後關機
  2. -k : 不關機,只發警告
  3. -r : 停止服務後重啟
  4. -h : 停止服務後關機
  5. -n : 不經過init,直接關機
  6. -f : 關機並啟用後,強制略過fsck的磁盤檢查
  7. -F : 重啟後,強制進行fsck的磁盤檢查
  8. -c : 取消關機

例子

  1. shutdown -h now <=等價=> shutdown -h +0 : 馬上關機
  2. shutdown -h 20:20 : 當天的20:20關機
  3. shutdown -h +10 : 10分鐘後關機
  4. shutdown -r now <=等價=> shutdown -r +0 <=等價=> shutdown -r 0
  5. shutdown -h now 'Close server now!' : 發送信息給在線用戶,立即關機

其它相關命令參考:

  1. reboot
  2. halt
  3. poweroff
  4. init


分享到:


相關文章: