Linux系統死機情況分析與處理方案介紹

來源:互聯網
上載者:User

我們在使用Linux系統的時候會發現系統沒有響應出現死機現象。這個時候要做些什麼呢?說到這有人就會問,Linux系統會死機嗎?我可以很肯定地說,會!要讓Linux死機很容易,但難的是在死機以後如何安全的讓他擺脫死機狀態,本文講述如何從Linux的死機狀態中掙脫出來。

Linux系統死機有很多種情況,最常見的是系統負載過高導致的。如上次介紹的fork炸彈就是這個原理,此外還可以運行記憶體耗用極大的程式如虛擬機器),也會迅速提升系統負載。由於系統負載過高導致的卡死,一定是解決的越快越好!此時必須記住的是,不能再試圖依賴任何圖形介面的東西,如 Gnome 的系統監視器這是我從 Windows 遺留下來的愚昧習慣……),這隻會繼續加重這種卡死的局面。那怎麼辦?

不要怕,Linux系統最初就是不需要圖形介面的,因為有一個很強大的文字介面。按 Ctrl-Alt-F1F1-F6 一般來說都可以),然後等一會兒,就會切換到 tty,也就是所謂的文字介面。這個時候需要用使用者名稱密碼登入。注意,可能鍵盤輸入的速度比較慢,不過應該還是可以忍受的。下面在提示符後面輸入 top 斷行符號,這時會看到一張動態表,上面列出了耗用資源最多的進程。觀察它重新整理一兩次,按q退出,然後輸入 kill ,其中的 PID 你可以在 top 裡面看到。這個時候應該會快了不少,如果你發現沒有成功結束掉,就再輸入 kill -KILL ,這次基本上就沒問題了。

除了上面這種情況外,一些底層軟體的 bug 也可能導致一些奇怪的死機問題。我某位同學近日就因為莫名其妙的死機強制重啟把 ext4 的分區給傷了。最後是 sysreccd 修複了,貌似是分區表部分損壞)據其說,死機是鍵鼠均無反應。一般來說,系統負載高導致的死機,在可怕鍵盤也會有反應,有人說如果死機到鍵盤無響應“負載 都無限大了”,亦有人說這可能是 X Server 與驅動配合有問題導致的。不過我們考慮一下遇到這種情況怎麼辦?

OK,這是今天才學到的方法,叫做 reisub,這個方法可以在各種情況下安全地重啟電腦。大家在鍵盤上找,可以找到一個叫做“Sys Rq”的鍵,在台機的鍵盤上通常與 Prt Sc 共鍵,在筆記本可能在其他位置,如 Delete。以台機為例,要使用這種方法需要按住 Alt-Print(Sys Rq),然後依次按下 reisub 這幾個鍵,按完 b 系統就會重啟。

下面解釋一下這個方法:其實 Sys Rq 是一種叫做系統請求的東西,按住 Alt-Print 的時候就相當於按住了 Sys Rq 鍵,這個時候輸入的一切都會直接由Linux核心來處理,它可以進行許多低級操作。這個時候 reisub 中的每一個字母都是一個獨立操作,他們分別表示:

R:unRaw 將鍵盤控制從 X Server 那裡搶回來
E:tErminate 給所有進程發送 SIGTERM 訊號,讓他們自己解決善後
I:kIll 給所有進程發送 SIGKILL 訊號,強制他們馬上關閉
S:Sync 將所有資料同步至磁碟
U:Unmount 將所有分區掛載為唯讀模式
B:reBoot 重啟

這6個字母的順序是不可以記錯的。那怎麼記呢?這裡提供一個個人認為比較好的方法:單詞 busierbusy 的比較級,更忙)倒過來就是了。

死機?不合適吧。真死機了除了hard reset還能幹什嗎?叫失去響應或者無響應更合適吧?

另外伺服器一般都是遠程操作的,sysrq怎麼用呢?

X掛掉,通常psuedo console就能搞定。通常大家也會開ssh,絕大多數情況下都能連上去殺進程,做重啟前的收尾比如sync來commit。

關於sysrq,通常RHEL/OEL等EnterpriseLinux系統預設都是關閉的需要事先開啟才可以用。

cat /proc/sys/kernel/sysrq,看了手頭的幾個案頭發行版本,只有Ubuntu預設是開的,Arch是關閉的。

對於案頭使用者而言,當案頭僵死時,用這個來搞一下,還是很方便的。
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.