有时系统负载过大,程序不能及时响应,很容易死机。对于个人用户来说,强行关机再重启就OK。但是在服务器上,服务器需要全天工作提供服务,不能停止,更重要的是数据的安全,强行关机会导致未同步的数据丢失,那要如何解决呢?
如果在图形界面下死机,可以先试试文字界面,按ctrl+alt+F2(F1-F6一般都可以),会切换到另外一个虚拟终端,需要一个账号来登入,进入后打top命令看一下进程,等这个表刷那么一两次,就可以确定占用资源比较大的进程了,然后输入q退出,回到终端内,把占用资源比较大的进程kill掉,这样可以解决相当一部分问题按ctrl+alt+F7回到图形界面。
但有的时候是比较底层的软件出现问题,那这个方法就不适用了。下面介绍一下reisub方法。说具体一点,是一种系统请求,直接交给内核处理。键盘上一般都有一个键,SysRq,和PrintScreen在一个键位上,这就是系统请求的键。这个方法可以在死机的情况下安全的重启计算机,数据不会丢失。
要使用Magic Sysrq Key,有三个基本条件:
1.键盘上有Sysrq键
2.系统使用的内核,在编译时打开了CONFIG_MAGIC_KEY选项
# 验证方法:
grep -F CONFIG_MAGIC_SYSRQ /boot/config-`uname -r`
# y表示已开启
CONFIG_MAGIC_SYSRQ=y
3.系统配置Magic Sysrq Key为可用
#临时启用,设置/proc/sys/kernel/sysrq
sudo echo "1" > /proc/sys/kernel/sysrq
#长期使用,查看 /etc/sysctl.conf,确认
kernel.sysrq = 1
#如果先前为0,更改配置后使用以下方式激活
sysctl -p
使用方法:按住alt和SysRq键的同时,再输入reisub,输入完b之后,系统自动重启。
解释:按住art和SysRq键时,输入的一切都会直接交给Linux内核来处理。
reisub中的每一个字母都是一个独立操作,他们分别表示:
Alt+SysRq+R 把键盘从X手中夺过来
Alt+SysRq+E 终结所有进程
Alt+SysRq+I 强制关闭所有进程
Alt+SysRq+S 同步所有挂载的文件系统
Alt+SysRq+U 重新挂载苏有的文件系统为只读
Alt+SysRq+B 重启
阅读(6486) | 评论(0) | 转发(0) |