linux 死機(jī)了怎么辦? |
發(fā)布時間: 2012/8/14 19:41:19 |
Linux 會死機(jī)么?我可以很肯定地說,會!如何?要讓 Linux 死機(jī)很容易,但難的是在死機(jī)以后如何安全的讓他擺脫死機(jī)狀態(tài)。 Linux 死機(jī)有很多種情況,最常見的是系統(tǒng)負(fù)載過高導(dǎo)致的。fork 炸彈就是這個原理,此外還可以運(yùn)行內(nèi)存耗用極大的程序(如虛擬機(jī)),也會迅速提升系統(tǒng)負(fù)載。由于系統(tǒng)負(fù)載過高導(dǎo)致的卡死,一定是解決的越快越好!此時必須記住的是,不能再試圖依賴任何圖形界面的東西,如 Gnome 的系統(tǒng)監(jiān)視器(這是我從 Windows 遺留下來的愚昧習(xí)慣……),這只會繼續(xù)加重這種卡死的局面。那怎么辦? 不要怕,Linux 最初就是不需要圖形界面的,因?yàn)橛幸粋很強(qiáng)大的文字界面。按 Ctrl-Alt-F1(F1-F6 一般來說都可以),然后等一會兒,就會切換到 tty,也就是所謂的文字界面。這個時候需要用用戶名密碼登入。注意,可能鍵盤輸入的速度比較慢,不過應(yīng)該還是可以忍受的。下面在提示符后面輸入 top 回車,這時會看到一張動態(tài)的表,上面列出了耗用資源最多的進(jìn)程。觀察它刷新一兩次,按q退出,然后輸入 kill ,其中的 PID 你可以在 top 里面看到。這個時候應(yīng)該會快了不少,如果你發(fā)現(xiàn)沒有成功結(jié)束掉,就再輸入 kill -KILL ,這次基本上就沒問題了。 除了上面這種情況外,一些底層軟件的 bug 也可能導(dǎo)致一些奇怪的死機(jī)問題。我某位同學(xué)近日就因?yàn)槟涿畹乃罊C(jī)強(qiáng)制重啟把 ext4 的分區(qū)給傷了。(最后是 sysreccd 修復(fù)了,貌似是分區(qū)表部分損壞)據(jù)其說,死機(jī)是鍵鼠均無反應(yīng)。一般來說,系統(tǒng)負(fù)載高導(dǎo)致的死機(jī),在可怕鍵盤也會有反應(yīng),有人說如果死機(jī)到鍵盤無響應(yīng)“負(fù)載都無限大了”,亦有人說這可能是 X Server 與驅(qū)動配合有問題導(dǎo)致的。不過我們考慮一下遇到這種情況怎么辦? OK,這是今天才學(xué)到的方法,叫做 reisub,這個方法可以在各種情況下安全地重啟計(jì)算機(jī)。大家在鍵盤上找,可以找到一個叫做“Sys Rq”的鍵,在臺機(jī)的鍵盤上通常與 Prt Sc 共鍵,在筆記本可能在其他位置,如 Delete。以臺機(jī)為例,要使用這種方法需要按住 Alt-Print(Sys Rq),然后依次按下 reisub 這幾個鍵,按完 b 系統(tǒng)就會重啟。 下面解釋一下這個方法:其實(shí) Sys Rq 是一種叫做系統(tǒng)請求的東西,按住 Alt-Print 的時候就相當(dāng)于按住了 Sys Rq 鍵,這個時候輸入的一切都會直接由 Linux 內(nèi)核來處理,它可以進(jìn)行許多低級操作。這個時候 reisub 中的每一個字母都是一個獨(dú)立操作,他們分別表示: unRaw 將鍵盤控制從 X Server 那里搶回來 tErminate 給所有進(jìn)程發(fā)送 SIGTERM 信號,讓他們自己解決善后 kIll 給所有進(jìn)程發(fā)送 SIGKILL 信號,強(qiáng)制他們馬上關(guān)閉 Sync 將所有數(shù)據(jù)同步至磁盤 Unmount 將所有分區(qū)掛載為只讀模式 reBoot 重啟 這6個字母的順序是不可以記錯的。那怎么記呢?這里提供一個個人認(rèn)為比較好的方法:單詞 busier(busy 的比較級,更忙)倒過來就是了。 基本上就這樣了,Linux 的死機(jī)本來就不多見,現(xiàn)在見了也可以安全解決了。
本文出自:億恩科技【1tcdy.com】 服務(wù)器租用/服務(wù)器托管中國五強(qiáng)!虛擬主機(jī)域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |