CentOS在高负载后不启动

所有我能看到后重新booting from local disk ,就是这样,我等了半小时,并试图救援磁盘。

从/ var / log / messages中的救援磁盘中有很多

 «echo 0 > /proc/sys/kernel/hung_task_timeout_secs» disables this message. 

我找不到任何可以指出问题的东西。 我该怎么办?

我使用的是centos 6.3 64bit, system installed on raid1

尝试configuration内核转储 [1] [2],并启动一个转储,而系统挂在Alt + SysRq + c。

在此之前,您可以尝试Alt + SysRq + tAlt + SysRq + m以及Alt + SysRq + w 。 这将输出一些关于当前任务列表,内存状态或当前cpu等待列表的内核debugging消息。

在崩溃实用程序的帮助下,您可能会得到一些洞察,在您的系统挂起期间发生了什么。 这些信息也可能发布到CentOS Bug Tracker [3],以便开发人员可以查看它。

如果内核对这些键序列没有反应,那么启动过程可能没有达到内核加载的时候。

所以你可以尝试启动光盘,看看启动加载程序是否正确安装。 从启动光盘安装根文件系统时,应该查看日志文件的时间戳。 如果时间戳已更新,则内核加载但您看不到任何输出。

在这种情况下,您应该validation内核命令行和kdumpconfiguration。 你也应该尝试fsck根卷。

如果在SysRq组合键后输出内核,则可能会看到一个当前卡在CPU中的进程。 有了这些信息,你应该知道这个过程是干什么的,你可以尝试chkconfigclosures这个服务。

另一种方法是尝试使用内核参数1S引导到单用户模式。 也从内核线删除安静rhqb应该给你更多的debugging输出。 但是要做到这一点,引导程序应该工作,或者你需要在救援模式的帮助下编辑内核参数。 这样做的时候,请创buildconfiguration文件的备份,并且可以禁用grub的隐藏菜单,以便看到您的盒子是否正确加载。

[1] http://www.mindtwist.de/main/linux/11-red-hat/27-how-to-configure-kernel-dumps-on-rhel-5.html

[2] http://prefetch.net/blog/index.php/2009/07/06/using-kdump-to-get-core-files-on-fedora-and-centos-hosts/

[3] http://bugs.centos.org/main_page.php