<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          CentOS7 內(nèi)核崩潰后處理

          共 1374字,需瀏覽 3分鐘

           ·

          2018-07-06 17:52

          關(guān)于kdump 和 crash
          kdump是一種kernel crash dump的機制,它可以在內(nèi)核crash時保存系統(tǒng)的內(nèi)存信息用于后續(xù)的分析。kdump是基于kexec的。
          crash是一個用于交互式地分析正在運行的Linux系統(tǒng)或者kernel crash后的core dump數(shù)據(jù)的工具。
          在CentOS 7 中配置kdump
          需要在kernel啟動命令行參數(shù)中添加crashkernel參數(shù),并啟動kdump服務(wù)。
          一般設(shè)置為 crashkernel=auto 表示根據(jù)系統(tǒng)內(nèi)存自動reserve一些內(nèi)存給kernelcrash用,在x86_64系統(tǒng)中內(nèi)存大于等于2GB時會reserve內(nèi)存,最小保留內(nèi)存計算方法是:160 MB + 2 bits for every 4 KB of RAM.
          當(dāng)然,也可以設(shè)置crashkernel=512M這樣的固定保留內(nèi)存。
          用 yum install kexec-tools 安裝kdump工具和服務(wù)
          用 systemctl start kdump 命令可以啟動kdump.service,用 systemctl enable kdump 讓dump服務(wù)在開機時自動啟動。
          kdump.service 相關(guān)的配置文件 /etc/kdump.conf 里面可以修改一些默認(rèn)的配置,比如dump完成后的動作(默認(rèn)是reboot)、dump文件存放的方式(本地目錄、NFS、scp到另外服務(wù)器等)。
          測試kdump
          用root權(quán)限執(zhí)行如下命令,可以讓kernel crash。
          1 echo 1 > /proc/sys/kernel/sysrq
          2 echo c > /proc/sysrq-trigger
          kernel dump完成后,系統(tǒng)重啟,進(jìn)入到 /var/crash/ 目錄下可以看到保存下來的crash時系統(tǒng)的內(nèi)存數(shù)據(jù)文件。 (默認(rèn)保存在/var/crash目錄)

          1. 用crash工具分析
            首先需要安裝對應(yīng)的kernel-debuginfo軟件包,比如:
            wget http://debuginfo.centos.org/7/x86_64/kernel-debuginfo-common-x86_64-3.10.0-327.el7.x86_64.rpm
            wget http://debuginfo.centos.org/7/x86_64/kernel-debuginfo-3.10.0-327.el7.x86_64.rpm

          安裝好kernel-debuginfo包后,執(zhí)行類似這樣的crash命令即可進(jìn)入交互式的分析:
          crash /usr/lib/debug/lib/modules/3.10.0-327.el7.x86_64/vmlinux /var/crash/127.0.0.1-2016-03-28-15\:28\:59/vmcore
          在輸入bt可以展示kernel-stack的backtrace,更多crash中的命令見 man crash。

          RIP是函數(shù)中panic時的地址,可以看到是netlink,進(jìn)行反編譯查看

          發(fā)現(xiàn)是cmp操作,通過查看源碼對應(yīng)行,解決問題。

          crash:http://www.dedoimedo.com/computers/crash.html

          瀏覽 75
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产免费一区二区三区四区六区在线 | 黄色成人免费网站 | 内射肉丝内射在线播放 | 大香蕉亚洲网 | 午夜极品人妻 |