1. 程式人生 > >CentOS上某一使用者宕機後處理辦法

CentOS上某一使用者宕機後處理辦法

Linux 宕機有很多種情況,最常見的是系統負載過高。系統負載過高導致的卡死,一解決的越快越好!

必須要養成不依賴任何圖形介面的東西,通常使用windows的人都有這習慣,這隻會繼續加重這種卡死的局面。

解決辦法:使用linux的文字介面tty。按 Ctrl-Alt-F2(F1-F6 一般來說都可以),然後等一會兒,就會切換到 tty。登入賬號。注意,鍵盤輸入速度可能慢了點,在輸入數字時不要用數字鍵盤區,雖然按Num Lock鍵會一亮一來,但我這裡數字鍵不起作用。

下面在提示符後面輸入 top命令,檢視耗用資源最多的程序。

找到要耗用資源最多的程序,記住PID或程序名字

按q退出,

然後輸入 kill  PID,或者pkill  程序名

這個時候應該會快了不少,如果你發現沒有成功結束掉,就再輸入 kill -KILL ,這次基本上就沒問題了。

我在kill掉耗費資源最多的幾個程序後,返回到圖形介面,發現依然宕機,這就表明不屬於負載過高的情況。

用其它使用者登入,發現其它使用者正常。

分析可能是守護程序的原因,考慮到問題使用者本身沒開啟幾個程式,就沒在追蹤原因所在,

最後 選擇登出問題使用者。

選用 pkill 命令,步驟如下:

1. 先用 w 命令檢視當前登入系統的使用者:

[[email protected]CentOS ~]# w

11:48:09 up  3:13,  2 users,  load average: 0.00, 0.01, 0.00

USER    TTY      FROM              [email protected]  IDLE  JCPU  PCPU WHAT

root    pts/0    218.17.167.82    11:47    0.00s  0.03s  0.01s w

root    pts/1    218.17.167.82    11:43    2:34  0.03s  0.03s -bash

2. 使用 pkill 命令將從 pts/1 終端登入的使用者登出:

[[email protected] ~]# pkill -kill -t pts/1

其中第 1 個引數 -kill 中的 kill 是 SIGKILL 訊號的縮寫。類似的,如果你要傳送 SIGINT 訊號,可以:

[[email protected] ~]# pkill -int -t pts/1

-t 選項後跟著連線終端的名稱