我怎样才能找到我的 CentOS 6.8 服务器每两天崩溃(遭受内核恐慌)的原因?

我怎样才能找到我的 CentOS 6.8 服务器每两天崩溃(遭受内核恐慌)的原因?

我的服务器每两天下午早些时候就会崩溃一次。我尝试使用 CPU 密集型程序使服务器超载,但这不会导致服务器崩溃,因此我相信这是某个程序或配置造成的。正在运行导致它。我已经下载了 crash 并尝试对其执行一些简单的命令,但我不确定它输出的是什么。

[root@resh boot]# crash /usr/lib/debug/lib/modules/2.6.32-642.1.1.el6.x86_64/vmlinux /var/crash/127.0.0.1-2016-08-02-09\:12\:20/vmcore
KERNEL: /usr/lib/debug/lib/modules/2.6.32-642.1.1.el6.x86_64/vmlinux
DUMPFILE: /var/crash/127.0.0.1-2016-08-02-09:12:20/vmcore  [PARTIAL DUMP]
CPUS: 32
DATE: Tue Aug  2 09:09:29 2016
UPTIME: 12:47:24
LOAD AVERAGE: 4.78, 4.66, 4.55
TASKS: 998
NODENAME: resh.cluster.org
RELEASE: 2.6.32-642.1.1.el6.x86_64
VERSION: #1 SMP Tue May 31 21:57:07 UTC 2016
MACHINE: x86_64  (2294 Mhz)
MEMORY: 31.8 GB
PANIC: "BUG: unable to handle kernel NULL pointer dereference at 
0000000000000002"
PID: 42993
COMMAND: "kslowd002"
TASK: ffff88040d88d520  [THREAD_INFO: ffff880100000000]
CPU: 7
STATE: TASK_RUNNING (PANIC)

crash> bt
PID: 42993  TASK: ffff88040d88d520  CPU: 7   COMMAND: "kslowd002"
#0 [ffff8801000039c0] machine_kexec at ffffffff8103fdcb
#1 [ffff880100003a20] crash_kexec at ffffffff810d1fe2
#2 [ffff880100003af0] oops_end at ffffffff8154bd00
#3 [ffff880100003b20] no_context at ffffffff810518cb
#4 [ffff880100003b70] __bad_area_nosemaphore at ffffffff81051b55
#5 [ffff880100003bc0] bad_area_nosemaphore at ffffffff81051c23
#6 [ffff880100003bd0] __do_page_fault at ffffffff8105231c
#7 [ffff880100003cf0] do_page_fault at ffffffff8154dc8e
#8 [ffff880100003d20] page_fault at ffffffff8154af95
[exception RIP: unknown or invalid address]
RIP: 0000000000000002  RSP: ffff880100003dd8  RFLAGS: 00010202
RAX: ffffffffa0465a80  RBX: ffff8801bc7da200  RCX: ffff8801bc7da2a8
RDX: 0000000000000002  RSI: 00000000ffffffff  RDI: ffff8801bc7da200
RBP: ffff880100003e20   R8: ffffffff81ad12d8   R9: fe2582cc8764a601
R10: 0000000000000001  R11: 0000000000000000  R12: 0000000000000000
R13: ffff8801bc7da248  R14: ffff8801bc7da290  R15: 00000000ffffffff
ORIG_RAX: ffffffffffffffff  CS: 0010  SS: 0018
#9 [ffff880100003dd8] fscache_object_slow_work_execute at ffffffffa0460e9f [fscache]
#10 [ffff880100003e28] slow_work_execute at ffffffff81121363
#11 [ffff880100003e68] slow_work_thread at ffffffff81121645
#12 [ffff880100003ee8] kthread at ffffffff810a662e
#13 [ffff880100003f48] kernel_thread at ffffffff8100c28a

由于它似乎每两天发生一次,因此我尝试查看 cron 作业,但没有与每两天的计划相匹配的 cron 作业。我也尝试过更新内核,但这也没有任何帮助。

答案1

我意识到这篇文章现在已经成为历史,但我今晚刚刚发生了同样的错误。注意堆栈条目

#9 [ffff880100003dd8] fscache_object_slow_work_execute at ffffffffa0460e9f [fscache]

这只是一种预感,但我们在 2.6.32-642 版内核上遇到了问题,缓存文件已运行。我们在 RHEL 6.x 系统上使用以下命令将其关闭肮脏的牛内核。

更新:参见此红帽解决方案页面有关该问题的更多信息。

缓存文件在这个系统上运行?如果是这样,请尝试一下,将其关闭并禁用它。

相关内容