CentOS6.3でkdumpを試します。
VMWareではすべてが正常であり、oopsではクラッシュカーネルがロードされ、vmcoreが作成されます。
物理マシンでoopsメッセージが表示されますが、クラッシュカーネルが起動していません。
Kexecを使用してカーネルをロードし、kdumpをロードしました。 kdumpのように「kexec--load-panic」の代わりに「kexec--load」を使用しました。その後、「kexec -e」を実行して、新しいカーネルにロードします。コンソールに「Startingnewkernel」というメッセージが永遠に表示されます。
何か案は?
Kdumpをredhatの方法で構成するだけの場合は、kexecを使用する必要はまったくありません。すべてがkdumpデーモン自体に統合されています。
簡単な手順。
1)対応するkernel-debuginfoおよびkernel-debuginfo-commonをダウンロードしてインストールします
2)yum installkexec-toolsクラッシュ
3)/etc/kdump.confファイルを編集します。たとえば、vmcoreファイルをリモートマシンにプッシュする場合は、
net [email protected]
core_collector makedumpfile -d 31 -c
4)追加
crashkernel=256M@16M
カーネルコマンドラインオプションの/etc/grub.conf内
5)マシン/ VMを再起動します
6)kdumpサーバーを起動します
service kdump start
クラッシュが発生したときにロードするダンプカーネルイメージを作成します。
7)今それをテストします
echo c > /proc/sysrq-trigger
クラッシュカーネル用の予約領域が小さい場合にも同様の問題が発生しました(crashkernel=64M
を使用しました)。 crashkernel
値を増やしてみてください。これは、お気に入りのブートローダーのカーネルブートパラメーターとして指定する必要があります。