Linux/結束異常程式
程式僵死
[編輯]在linux中,如果有某一個程式卡死,可以打開系統監視器。在裡面結束這個程式,這個跟windows的工作管理員有點像。它在系統->系統管理->系統監視器。
但是,有些程式並不在那裡顯示.這時可以打開終端,輸入以下命令.
ps -e
這個命令可以列出所有正在執行的程式.例如
7868 ? 00:00:00 pppd 7905 ? 00:00:15 firefox 7934 ? 00:00:00 gnome-terminal 7937 ? 00:00:00 gnome-pty-helpe
找到你要殺死的程式,在對應行的第一列,是這個程式的PID,如果要殺死firefox,可以用下面命令
sudo kill 7905
7905就是PID號,當然要跟據實際改一下.
還有就是,同一個程式每次執行的PID是不一樣的.所以每次殺死一個程式前都得查PID號.
如果你已經知道行程名,你也可以直接執行killall命令。 如:
killall gnome-terminal
當機
[編輯]在Linux中當機不是完全的當機,你仍然可以進入後端的命令行模式.按Ctrl+Alt+F1就會進入一個命令行,在這個命令行中你需要重新登陸一下,輸入你的用戶名稱,再輸密碼,登陸成功後,再用命令
ps -e
找出最後出問題程式的PID
sudo kill 7905
這個與上面介紹過的一樣.
但是命令行下,螢幕的顯示範圍有限,如果你要找的程式被擠到螢幕外去了,可以把輸出內容重新導向到less或者more程式(less比more增加了向前回滾的功能,但不是每一個發行版都包含less)
ps -e | less
這樣就可以用鍵盤上的上下箭頭捲動螢幕了。
也可以將輸出重新導向到一個檔案:
ps -e > foo vi foo
退出vi,先按Esc鍵,然後輸入「:q」Enter,就可以了。vi是在命令行下的文字編輯器,具本可以看關於文字文件的介紹。
在殺死程式後,要回到圖形介面按Ctrl+Alt+F7。
如果你有足夠的聯想能力和探索精神,可能會想試試其它的Ctrl+Alt+Fn,試試吧。
如果系統已經徹底當機到Ctrl+Alt+F1都無法打開的地步了,就請試試:
按住Alt+SysRq(SysRq在主鍵盤和小鍵盤中間一欄的按鍵內),然後一直保持著Alt鍵不放的情況下(SysRq鍵可以放開),依次按下REISUB六個鍵(分別表示:重設鍵盤、結束行程、強行殺死行程、同步硬碟的快取資料、重新掛載硬碟為唯讀模式、強行重新啟動)。這種方法被成為 Magic SysRq
EXT4格式造成的當機
[編輯]EXT4格式是一種linux磁碟格式,應該說是一個不成熟的磁碟格式,所以在安裝ubutu的時候你會發現,EXT4排在EXT3的下面.
在EXT4格式磁碟里,移動大量檔案時會造成當機,而且這種當機是完全的當機,沒有解決方法,只能強行關機,但這樣會造成資料遺失.
但是網上介紹,EXT4格式在存取速度方面還是有很大提高的.所以你如果你的home目錄在一個獨立的分割區中的話,可以把根分割區設為EXT4格式,把home分割區設為EXT3格式.
因為日常的檔案操作都是在home分割區進行的.但是在一次安裝大量應用程式時,最好不要進行其它操作,因為這是在根分割區中進行的。