Linux卡死的解决方法 solution of server stuck or freezes

如果整个系统都死机了,可以尝试使用SysReq 解决

检查Sysrq是否开启

在大多数发行版中,默认情况下已编译并启用,要确认该选项是否开启,请使用

sysctl kernel.sysrq

如果值大于1,说明已启用

要永久更改该值,可以使用

sudo vim /etc/sysctl.conf

搜索kernel.sysrq,并更改为想要的值

更改/etc/sysctl.conf,执行下面的命令,不需要重启系统就能使更改生效

sysctl -p

扫描二维码关注公众号,回复: 14649339 查看本文章

使用Sysrq

Alt + SysRq + r 使键盘脱离原始模式,使控制权从 X 手中夺走
Alt + SysRq + e 将 SigTerm 发送到所有流程,让他们有机会优雅地退出
Alt + SysRq + i 将 SigKill 发送到所有进程
Alt + SysRq + k 终止当前虚拟控制台中的所有进程
Alt + SysRq + s 同步所有挂载的文件系统,将所有数据刷新到磁盘
Alt + SysRq + u 以只读方式重新挂载所有文件系统
Alt + SysRq + b 立即重新启动系统,不同步或卸载
Alt + SysRq + o 关机系统

发送请求时,同时按下 Alt 键和 SysRq 键,加上R/E/I/S/U/B (不区分大小写)中的一个键。如果您无法看到内核的响应,请在命令之间留出几秒钟的时间。请求硬盘操作时注意硬盘指示灯。

方式一

Alt + SysRq + r e k

此序列适用于重新启动无响应的  服务器。首先,使用 Alt + SysRq + r 将键盘从原始模式中解脱出来。然后,您请求使用 Alt + SysRq + e 向所有进程发送 SIGTERM。服务器可能会使用此请求重新启动。如果是这样,则您已经拯救了您的系统。如果没有,请继续执行第三个请求,Alt + SysRq + k。这会将 SIGKILL 发送到当前虚拟控制台中的所有进程

方式二

Alt + SysRq + r e i s u b

参考:

Make changes to sysctl.conf take effect without rebooting Linux? - SysTutorials

处理冻结的 Linux 系统的 3 种方法 (linuxhandbook.com) 

猜你喜欢

转载自blog.csdn.net/qq_41566366/article/details/126501980