您好,欢迎来到思海网络,我们将竭诚为您提供优质的服务! 诚征网络推广 | 网站备案 | 帮助中心 | 软件下载 | 购买流程 | 付款方式 | 联系我们 [ 会员登录/注册 ]
促销推广
客服中心
业务咨询
有事点击这里…  531199185
有事点击这里…  61352289
点击这里给我发消息  81721488
有事点击这里…  376585780
有事点击这里…  872642803
有事点击这里…  459248018
有事点击这里…  61352288
有事点击这里…  380791050
技术支持
有事点击这里…  714236853
有事点击这里…  719304487
有事点击这里…  1208894568
有事点击这里…  61352289
在线客服
有事点击这里…  531199185
有事点击这里…  61352288
有事点击这里…  983054746
有事点击这里…  893984210
当前位置:首页 >> 技术文章 >> 文章浏览
技术文章

Linux常见死机原因

添加时间:2018-10-6 20:52:52  添加: 思海网络 
在排除了硬件故障/firmware版本/BIOS等等问题之外, Linux死机通常可能碰到如下几种情况

1, 如果你的Linux死机的时候控制台上有乱七八糟的字符。恭喜你,这种情况叫做oops. 通常是Linux kernel认为自己发生了异常造成的。

可以通过oops消息查找出错的地方。 

2, 如果你的机器僵死,那么问题麻烦了。这种时候,通常是Kernel出现了死锁。Kernel不会知道自己死锁了,所以不会在屏幕上显示任何咚咚。
如果运气好,此时Kernel也许可能能够响应中断。不管怎样,你都无法进一步操作了。

3, 严格来说,这第三种情况不算死机,现象如下:输入命令回车之后命令不能返回任何结果, 但是控制台对回车可能有相应。但是命令无法结束,也不会有输出结果。
但是可以换到下一个控制台, 而且还可以继续输入命令,但是输入命令之后还是没有输出。这种情况会有很多可能。通常是应用程序的系统调用长时间没有返回或者是满足不了应用的要求。

以上三种情况,system log的作用都不大。通常日志都不会纪录。所以只能使用Kernel的Debug工具。

不过Linus比较狠,人说Kernel不需要Debug工具。所以kernel.org中的代码是没有debug工具的。不过目前绝大多数发行版的kernel都带了debug工具,而且工具都不一样。

通常进行kernel debug都需要在出现故障的时候采集vmcore. 就是把故障发生的时memory dump出来。(还记得Windows 蓝屏的时候会出现1%-100%跳动的一个数字和c盘dump.sys文件, 这回知道干什么的了吧? )  然后进行分析。也许你会担心Linux死机了,还怎么dump memory啊,这个不用担心,Kernel还是留了好几条路子。其中一个是NMI。

那么到底怎么dump memory呢? 这里用REDHAT为例,RHEL3,RHEL4中都使用了netdump作为采集工具,RHEL5使用kdump作为采集工具。 

采集完毕就可以对vmcore进行分析,步骤就不细说了。可以参考如下文章:http://people.redhat.com/anderson/crash_whitepaper/

但是对于管理员来说,任何一个debug工具都需要代码开发的经历才能顺利使用。


那么,脚本,应用程序会不会导致死机? 当然,但是问题还是出在Kernel上。就比如,应用程序写文件,系统可能会挂起在kernel中的文件系统代码上。


关键字:Linux、死机原因、Kernel

分享到:

顶部 】 【 关闭
版权所有:佛山思海电脑网络有限公司 ©1998-2018 All Rights Reserved.
联系电话:(0757)22630313、22633833
公司地址: 广东省佛山市顺德区大良国际商业城A区4座3楼106号   邮编:528300
机房7x24小时服务热线:(0757)23628508、23628509
中华人民共和国增值电信业务经营许可证: 粤B1.B2-20030321 备案号:粤B2-20030321-1
网站公安备案编号:44060602000007 交互式栏目专项备案编号:200303DD003  
察察 工商 网安 举报有奖  警警  手机打开网站