41.7. kexec を使用した別のカーネルの起動
kexec
システムコールを使用すると、現在実行中のカーネルから別のカーネルをロードして起動することができます。kexec は
カーネル内からブートローダーの機能を実行します。
kexec
ユーティリティーは、kexec
システムコールのカーネルおよび initramfs
イメージを読み込み、別のカーネルで起動します。
以下の手順では、kexec
ユーティリティーを使用して別のカーネルに再起動する時に、kexec
システムコールを手動で呼び出す方法を説明します。
手順
kexec
ユーティリティーを実行します。# kexec -l /boot/vmlinuz-3.10.0-1040.el7.x86_64 --initrd=/boot/initramfs-3.10.0-1040.el7.x86_64.img --reuse-cmdline
このコマンドは、
kexec
システムコール用のカーネルとinitramfs
イメージを手動でロードします。システムを再起動します。
# reboot
このコマンドはカーネルを検出し、すべてのサービスをシャットダウンしてから、
kexec
システムコールを呼び出して直前の手順で指定したカーネルに再起動します。
kexec -3
コマンドを使用して、マシンを別のカーネルで再起動すると、システムは、次のカーネルを起動する前に標準のシャットダウンシーケンスを通過しません。これにより、データが失われたり、システムが応答しなくなったりする可能性があります。