Linux 死机有很多种情况,最常见的是系统负载过高。系统负载过高导致的卡死,一解决的越快越好!
必须要养成不依赖任何图形界面的东西,通常使用windows的人都有这习惯,这只会继续加重这种卡死的局面。
解决办法:使用linux的文字界面tty。按 Ctrl-Alt-F2(F1-F6 一般来说都可以),然后等一会儿,就会切换到 tty。登录账号。注意,键盘输入速度可能慢了点,在输入数字时不要用数字键盘区,虽然按Num Lock键会一亮一来,但我这里数字键不起作用。
下面在提示符后面输入 top命令,查看耗用资源最多的进程。
找到要耗用资源最多的进程,记住PID或进程名字
按q退出,
然后输入 kill PID,或者pkill 进程名
这个时候应该会快了不少,如果你发现没有成功结束掉,就再输入 kill -KILL ,这次基本上就没问题了。
我在kill掉耗费资源最多的几个进程后,返回到图形界面,发现依然死机,这就表明不属于负载过高的情况。
用其它用户登录,发现其它用户正常。
分析可能是守护进程的原因,考虑到问题用户本身没开启几个程序,就没在追踪原因所在,
最后 选择注销问题用户。
选用 pkill 命令,步骤如下:
1. 先用 w 命令查看当前登录系统的用户:
[root@CentOS ~]# w
11:48:09 up 3:13, 2 users, load average: 0.00, 0.01, 0.00
USER TTY FROM LOGIN@ 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 终端登录的用户注销:
[root@centos ~]# pkill -kill -t pts/1
其中第 1 个参数 -kill 中的 kill 是 SIGKILL 信号的缩写。类似的,如果你要发送 SIGINT 信号,可以:
[root@centos ~]# pkill -int -t pts/1
-t 选项后跟着连接终端的名称