CentOS 6.4下操作kdump执行过程
kdump 是一個(gè)新的,而且非常可信賴的內(nèi)核崩潰轉(zhuǎn)儲(chǔ)機(jī)制。崩潰轉(zhuǎn)儲(chǔ)數(shù)據(jù)可以從一個(gè)新啟動(dòng)的內(nèi)核的上下文中獲取,而不是從已經(jīng)崩潰的內(nèi)核的上下文。當(dāng)系統(tǒng)崩潰時(shí),kdump使用kexec啟動(dòng)到第二個(gè)內(nèi)核。第二個(gè)內(nèi)核通常叫做捕獲內(nèi)核(capture kernel),以很小內(nèi)存啟動(dòng),并且捕獲轉(zhuǎn)儲(chǔ)鏡像。除了執(zhí)行既定的kdump任務(wù),它還允許自定義執(zhí)行腳本,下面介紹一下如何在新內(nèi)核上執(zhí)行自定義的操作:
安裝kdump環(huán)境
yum install kexec-tools
chkconfig kdump on
service kdump start
修改/boot/grub/menu.lst中的 "crashkernel=auto”為 “crashkernel=128M”
重啟機(jī)器
echo c > /proc/sysrq-trigger
【此時(shí)正在運(yùn)行的內(nèi)核崩潰,kdump自動(dòng)切換到新內(nèi)核,在新內(nèi)核里執(zhí)行保存崩潰內(nèi)核信息的動(dòng)作】
通過(guò)配置/etc/kdump.conf可以控制kdump在保存崩潰內(nèi)核之前和之后進(jìn)行的操作kdump_pre和kdump_post
extra_bins /bin/sh????? 【切記把這個(gè)加上,否則無(wú)法執(zhí)行腳本】
kdump_pre /var/crash/kdump_pre.sh
kdump_post /var/crash/kdump_post.sh
新內(nèi)核的環(huán)境在/boot下,比如initrd-2.6.32-358.el6.x86_64kdump.img
當(dāng)舊內(nèi)核崩潰時(shí),kdump會(huì)解壓縮這個(gè)img文件并執(zhí)行,解壓縮方式為
mv initrd-2.6.32-358.el6.x86_64kdump.img initrd-2.6.32-358.el6.x86_64kdump.img.gz
gunzip initrd-2.6.32-358.el6.x86_64kdump.img.gz
cpio -idmv < initrd-2.6.32-358.el6.x86_64kdump.img
img文件內(nèi)包括新內(nèi)核需要的所有文件,平時(shí)使用的cp、mv等都鏈接到busybox
[root@new-dev-2 bin]# ll cp mv ? ? ?
lrwxrwxrwx. 1 root root 7 Sep 17 12:13 cp -> busybox ? ? ?
lrwxrwxrwx. 1 root root 7 Sep 17 12:13 mv -> busybox如果希望獨(dú)立的cp和mv,可以通過(guò)修改kdump.conf實(shí)現(xiàn):extra_bins /bin/cp;? extra_bins /bin/mv
轉(zhuǎn)載:http://itindex.net/detail/45696-yuanbor-centos-6.4
轉(zhuǎn)載于:https://blog.51cto.com/abadem/1582979
總結(jié)
以上是生活随笔為你收集整理的CentOS 6.4下操作kdump执行过程的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: PHP与ThinkPHP读写文件
- 下一篇: PHP_正则_获取图片所有属性