怎样处理linux死机
原文:http://blog.chinaunix.net/uid-8196371-id-4163118.html
有时系统负载过大,程序不能及时响应,很容易死机。对于个人用户来说,强行关机再重启就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 重启
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架