CentOSでkernel crashdump解析
CentOS4ベースで解析する必要があったのでやりながらメモ。
- 用意する物
#バージョンはすべて同一で揃える
対象環境から取得
vmcore (diskdump/netdumpで取得、/var/crash以下に落ちてる)
CentOSのミラーから取得
kernel-2.6.9-XX.X.X.EL.i686.rpm (既に入ってるはず)
kernel-2.6.9-XX.X.X.EL.src.rpm (参照用)
http://vault.centos.org/debuginfo/4/i386/ から取得
kernel-debuginfo-2.6.9-XX.X.XX.EL.i686.rpm (デバックシンボル付き)
- カーネルソースを展開(該当箇所確認用)
#/usr/src/redhat/BUILD/kernel-2.6.9 以下にパッチ後のソースが展開される
rpm -ivh kernel-2.6.9-XX.X.X.EL.src.rpm
cd /usr/src/redhat/SPECS
rpmbuild -bp kernel-2.6.spec
- デバック情報付きバイナリの展開
#/usr/lib/debug 以下に展開される
rpm -ivh kernel-debuginfo-2.6.9-XX.X.XX.EL.i686.rpm
- gdb実行
gdb --core=./vmcore --se=/usr/lib/debug/lib/modules/2.6.9-XX.X.X.EL/vmlinux
良く使うコマンドは以下
list
bt
info reg
ptype
p