博航社区

 找回密码
 立即注册博航社区

用新浪微博连接

一步搞定

QQ登录

只需一步,快速开始

查看: 8463|回复: 0
打印 上一主题 下一主题

Linux系统突然死机了,怎么办? [复制链接]

Rank: 2

跳转到指定楼层
楼主
发表于 2013-7-31 14:40:34 |只看该作者 |倒序浏览
分享到:

    Linux系统突然死机了,怎么办?如何让Linux系统死机以后如何安全的让他摆脱死机状态,本文讲述如何从linux 的死机状态中挣脱出来。

    Linux 死机有很多种情况,最常见的是系统负载过高导致的。如上次介绍的fork 炸弹就是这个原理,此外还可以运行内存耗用极大的程序(如虚拟机),也会迅速提升系统负载。由于系统负载过高导致的卡死,一定是解决的越快越好!此时必须记住的是,不能再试图依赖任何图形界面的东西,如Gnome 的系统监视器(这是我从 Windows 遗留下来的愚昧习惯……),这只会继续加重这种卡死的局面。那怎么办?

    不要怕,Linux 最初就是不需要图形界面的,因为有一个很强大的文字界面。按Ctrl-Alt-F1(F1-F6 一般来说都可以),然后等一会儿,就会切换到 tty,也就是所谓的文字界面。这个时候需要用用户名密码登入。注意,可能键盘输入的速度比较慢,不过应该还是可以忍受的。下面在提示符后面输入top 回车,这时会看到一张动态的表,上面列出了耗用资源最多的进程。观察它刷新一两次,按q退出,然后输入 kill ,其中的 PID 你可以在 top 里面看到。这个时候应该会快了不少,如果你发现没有成功结束掉,就再输入kill -KILL ,这次基本上就没问题了。

    除了上面这种情况外,一些底层软件的bug 也可能导致一些奇怪的死机问题。我某位同学近日就因为莫名其妙的死机强制重启把 ext4 的分区给伤了。(最后是 sysreccd 修复了,貌似是分区表部分损坏)据其说,死机是键鼠均无反应。一般来说,系统负载高导致的死机,在可怕键盘也会有反应,有人说如果死机到键盘无响应负载 都无限大了,亦有人说这可能是 X Server 与驱动配合有问题导致的。不过我们考虑一下遇到这种情况怎么办?

    OK,这是今天才学到的方法,叫做reisub,这个方法可以在各种情况下安全地重启计算机。大家在键盘上找,可以找到一个叫做Sys Rq的键,在台机的键盘上通常与 Prt Sc 共键,在笔记本可能在其他位置,如 Delete。以台机为例,要使用这种方法需要按住Alt-Print(Sys Rq),然后依次按下 reisub 这几个键,按完 b 系统就会重启。

    下面解释一下这个方法:其实Sys Rq 是一种叫做系统请求的东西,按住 Alt-Print 的时候就相当于按住了 Sys Rq 键,这个时候输入的一切都会直接由 Linux 内核来处理,它可以进行许多低级操作。这个时候reisub 中的每一个字母都是一个独立操作,他们分别表示:

    unRaw将键盘控制从XServer那里抢回来

    tErminate 给所有进程发送SIGTERM 信号,让他们自己解决善后kIll      给所有进程发送SIGKILL 信号,强制他们马上关闭

    Sync将所有数据同步至磁盘

    Unmount将所有分区挂载为只读模式

    reBoot重启

    这6个字母的顺序是不可以记错的。那怎么记呢?这里提供一个个人认为比较好的方法:单词busier(busy 的比较级,更忙)倒过来就是了。

    基本上就这样了,Linux的死机本来就不多见,现在见了也可以安全解决,多好~


    Linux系统学习技术答疑:http://emb.sunplusedu.com/answer/



分享到: QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
分享分享0 收藏收藏0 转发到微博
http://emb.sunplusedu.com/

使用道具 举报

Archiver|手机版|谷歌地图|百度地图|官网地图|淘宝链接|博航智能圈 - ARM嵌入式AI物联网IOT机器人

GMT+8, 2024-5-9 05:51 , Processed in 0.051869 second(s), 6 queries , Gzip On, Memcache On.

club.broadon.net

© 2007-2012 BroadOn

回顶部