6.6. クラッシュダンプメカニズムのテスト
クラッシュ ダンプ メカニズムをテストすると、次のような問題が発生します。 システムの再起動。 特定の状況では、システムに大きな負荷がかかると、データ損失が発生する可能性があります。 メカニズムをテストする場合は、システムがアイドル状態であるか、非常に軽い負荷がかかっていることを確認してください。
その SysRQ メカニズムは、の値を確認することで有効になります。 / proc / sys / kernel / sysrq カーネルパラメータ:
cat / proc / sys / kernel / sysrq
の値が 0 ダンプが返されると、再起動機能が無効になります。 より大きい値 1 sysrq 機能のサブセットが有効になっていることを示します。 見る /etc/sysctl.d/10-magic-sysrq.conf オプションとデフォルト値の詳細については、「」を参照してください。 ダンプを有効にし、次のコマンドでテストを再起動します。
sudo sysctl -w kernel.sysrq=1
これが完了したら、root になる必要があります。 sudo 十分ではありません。 として ルート ユーザーは、コマンドを発行する必要があります echo c > /proc/sysrq-trigger。 ネットワーク接続を使用している場合、システムとの接続が失われます。 このため、システム コンソールに接続しているときにテストを実行することをお勧めします。
これには、カーネル ダンプ プロセスが可視化されるという利点があります。 一般的なテスト出力は次のようになります。
sudo -s
ubuntuの[sudo]パスワード:
# echo c > /proc/sysrq-trigger
[ | 31.659002] | SysRq : クラッシュをトリガーする |
[ | 31.659749] | バグ: カーネル NULL ポインタ逆参照を処理できません |
[ | 31.662668] | IP: [<ffffffff8139f166>] sysrq_handle_crash+0x16/0x20 |
[ | 31.662668] | PGD 3bfb9067 PUD 368a7067 PMD 0 |
[ | 31.662668] | おっと: 0002 [#1] SMP |
[ | 31.662668] | CPU 1 |
[ | 31.659002] | SysRq : クラッシュをトリガーする |
[ | 31.659749] | バグ: カーネル NULL ポインタ逆参照を処理できません |
[ | 31.662668] | IP: [<ffffffff8139f166>] sysrq_handle_crash+0x16/0x20 |
[ | 31.662668] | PGD 3bfb9067 PUD 368a7067 PMD 0 |
[ | 31.662668] | おっと: 0002 [#1] SMP |
[ | 31.662668] | CPU 1 |
(ヌル)
....
残りの出力は切り詰められていますが、システムが再起動し、ログのどこかに次の行が表示されるはずです。
開始: カーネル クラッシュから vmcore を保存しています ...
完了すると、システムは通常の動作モードに再起動します。 カーネル クラッシュ ダンプ ファイルと関連サブディレクトリが次の場所にあります。 /var/クラッシュ ディレクトリ:
ls /var/クラッシュ
201809240744 kexec_cmd linux-image-4.15.0-34-generic-201809240744.crash
OOM (メモリ不足) エラーが原因でダンプが機能しない場合は、編集して予約メモリの量を増やしてみてください。 /etc/default/grub.d/kdump-tools.cfg。 たとえば、512 メガバイトを予約するには、次のようにします。
GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT クラッシュカーネル=384M-:512M"
ラン sudo update-grub その後再起動して、再度テストします。