CentOS 6.2 サーバーを再起動すると、次のエラーでカーネルパニックが発生します。
Kernel panic - not syncing: Attempted to kill init!
Panic occurred, switching back to text console
通り過ぎる時制初期化=オプション selinux=0起動時にカーネルに追加されると、サーバーは問題なく起動します。 init = optionが実行していることを検索してみましたが、それを説明するリソースが見つかりませんでした。
- このパラメータの機能を説明できる人はいますか?
- また、これは本番サーバーなので、init =オプションを使用して実行する場合の欠点/危険はありますか?
initramfs
を介して再作成してみましたが、うまくdracut
いかず、起動時に上記のエラーが発生しました。
これはクラスタ化されたサーバーであり、プライマリサーバーが同じである必要があるため、/boot
別のサーバーからドライブをコピーしましたが、問題は解決されませんでした。 (他のサーバーにはこの動作はありません)
バックアップから復元しても/boot
機能しません。
この問題を調査するのに役立ちますか?
- このカーネルパニックの原因は何ですか?
- この問題をどのように解決しますか?
- どのログがより多くの情報を提供しますか?
- 以前のインストールなので、更新/アップグレードするとこの問題は解決しますか?
また、発生する可能性のある唯一の関連する問題は、RAIDミラーのルートディスクにエラーが発生し、これらのことが発生する前に交換されることを追加したいと思います。
答え1
Linuxカーネルによるとパラメータの文書化:
初期化=オプション
init= [KNL] Format: <full_path> Run specified binary instead of /sbin/init as init process.
selinux=0
selinux= [SELINUX] Disable or enable SELinux at boot time. Format: { "0" | "1" } See security/selinux/Kconfig help text. 0 -- disable. 1 -- enable. Default value is set via kernel config option. If enabled at boot time, /selinux/disable can be used later to disable prior to initial policy load.
したがって、これらのパラメータを使用して実行すると、selinuxが無効になり、optionという名前のinitデーモンがロードされます。したがって、この方法で実行してもシステムの動作は妨げられないはずですが、selinuxを無効にするとセキュリティコストが発生します。しかし、実行すると初期化=オプションいいえselinux=0selinuxがinitを妨げてはならないので、正常に起動する必要があります。問題を解決する理由がわかりません。/sbin/初期化衝突するがオプションバイナリが正しく起動されるため、他の人がこの回答を編集して修正を含めることもできます。