|
馬上注冊,結交更多好友,享用更多功能。
您需要 登錄 才可以下載或查看,沒(méi)有帳號?注冊
x
Linux 死機有很多種情況,最常見(jiàn)的是系統負載過(guò)高導致的。如上次介紹的 fork 炸彈就是這個(gè)原理,此外還可以運行內存耗用極大的程序(如虛擬機),也會(huì )迅速提升系統負載。由于系統負載過(guò)高導致的卡死,一定是解決的越快越好!此時(shí)必須記住的是,不能再試圖依賴(lài)任何圖形界面的東西,如 Gnome 的系統監視器(這是我從 Windows 遺留下來(lái)的愚昧習慣……),這只會(huì )繼續加重這種卡死的局面。那怎么辦? 不
要怕,Linux 最初就是不需要圖形界面的,因為有一個(gè)很強大的文字界面。按 Ctrl-Alt-F1(F1-F6
一般來(lái)說(shuō)都可以),然后等一會(huì )兒,就會(huì )切換到
tty,也就是所謂的文字界面。這個(gè)時(shí)候需要用用戶(hù)名密碼登入。注意,可能鍵盤(pán)輸入的速度比較慢,不過(guò)應該還是可以忍受的。下面在提示符后面輸入
top 回車(chē),這時(shí)會(huì )看到一張動(dòng)態(tài)的表,上面列出了耗用資源最多的進(jìn)程。觀(guān)察它刷新一兩次,按q退出,然后輸入 kill ,其中的 PID 你可以在 top 里面看到。這個(gè)時(shí)候應該會(huì )快了不少,如果你發(fā)現沒(méi)有成功結束掉,就再輸入 kill -KILL ,這次基本上就沒(méi)問(wèn)題了。
除了上面這種情況外,一些底層軟件的 bug 也可能導致一些奇怪的死機問(wèn)題。我某位同學(xué)近日就因為莫名其妙的死機強制重啟把 ext4
的分區給傷了。(最后是 sysreccd
修復了,貌似是分區表部分損壞)據其說(shuō),死機是鍵鼠均無(wú)反應。一般來(lái)說(shuō),系統負載高導致的死機,在可怕鍵盤(pán)也會(huì )有反應,有人說(shuō)如果死機到鍵盤(pán)無(wú)響應“負載
都無(wú)限大了”,亦有人說(shuō)這可能是 X Server 與驅動(dòng)配合有問(wèn)題導致的。不過(guò)我們考慮一下遇到這種情況怎么辦?
OK,這是今天才學(xué)到的方法,叫做 reisub,這個(gè)方法可以在各種情況下安全地重啟計算機。大家在鍵盤(pán)上找,可以找到一個(gè)叫做“Sys
Rq”的鍵,在臺機的鍵盤(pán)上通常與 Prt Sc 共鍵,在筆記本可能在其他位置,如 Delete。以臺機為例,要使用這種方法需要按住 Alt-Print(Sys Rq),然后依次按下 reisub 這幾個(gè)鍵,按完 b 系統就會(huì )重啟。
下面解釋一下這個(gè)方法:其實(shí) Sys Rq 是一種叫做系統請求的東西,按住 Alt-Print 的時(shí)候就相當于按住了 Sys Rq
鍵,這個(gè)時(shí)候輸入的一切都會(huì )直接由 Linux 內核來(lái)處理,它可以進(jìn)行許多低級操作。這個(gè)時(shí)候 reisub
中的每一個(gè)字母都是一個(gè)獨立操作,他們分別表示:
unRaw 將鍵盤(pán)控制從 X Server 那里搶回來(lái)成都電腦維修培訓學(xué)校cdxcnote.soxsok.com/成都電腦維修培訓
tErminate 給所有進(jìn)程發(fā)送 SIGTERM 信號,讓他們自己解決善后
kIll 給所有進(jìn)程發(fā)送 SIGKILL 信號,強制他們馬上關(guān)閉
Sync 將所有數據同步至磁盤(pán)
Unmount 將所有分區掛載為只讀模式
reBoot 重啟
這6個(gè)字母的順序是不可以記錯的。那怎么記呢?這里提供一個(gè)個(gè)人認為比較好的方法:?jiǎn)卧~ busier(busy 的比較級,更忙)倒過(guò)來(lái)就是了。
|
|