1. 程式人生 > >硬碟故障時如何強制關機:Input/output error

硬碟故障時如何強制關機:Input/output error

如果硬碟可能會出現鎖死或壞道的故障,會造成 SHELL 命令的失效,包括 reboot,powoff,,shutdown,用正常的命令是沒法完成重啟的。

執行這些命令,會出現如下 IO 報錯:

1234 # rebootbash:/sbin/reboot:Input
/output error# shurdown -r nowbash:/sbin/shutdown:Input/output error

很明顯,因為硬碟的故障,核心無法從磁碟上讀取二進位制程式 /sbin/reboot 和 /sbin/shutdown 來執行,所以命令失敗。下次啟動時系統自動 fsck 可能會更正磁碟錯誤,但首先需要使系統重啟,拉掉電源這個辦法可能會造成硬碟的傷害。

可以讓核心直接重啟,不需要讀取(已經鎖死或壞掉的)硬碟,如下:

1、執行:

1 echo1>/proc/sys/kernel/sysrq

"magic SysRq key"提供了一個通過/proc 來直接給核心傳送命令的方法。要啟用該特性,只需在核心編譯的時候啟用"CONFIG_MAGIC_SYSRQ"這個選項,而一般發行版的標準核心都已經啟用了。

所以,只需執行第一步命令啟用這個選項。

2、再執行如下命令

1 echob>
/proc/sysrq-trigger

裝置將會立即重啟。