web-dev-qa-db-ja.com

サーバーが起動しない、カーネルパニック-同期しない

CentOS 6.2サーバーの再起動後、次のエラーでカーネルパニックが発生します。

Kernel panic - not syncing: Attempted to kill init!
Panic occurred, switching back to text console

ブート時にinit = option selinux =をカーネルに渡すと、サーバーは問題なくブートします。私はinit = optionが何をするかを検索してみましたが、それを説明する手段を見つけることができませんでした。

  • 誰かがこのパラメータが何をするのか説明できますか?
  • また、これは本番サーバーであるため、init = optionを使用して実行する場合にマイナス点やリスクはありますか?

私は動作しないdracutを介してinitramfsを作り直そうとしましたが、起動時に上記のエラーを受け取りました。

これはクラスター化されたサーバーであり、プライマリサーバーは同一である必要があるため、他のサーバーから/ bootドライブをコピーしましたが、これでも問題は解決しませんでした。 (他のサーバーにはこの動作はありません)

バックアップからの/ bootの復元も機能しませんでした。

この問題の調査を手伝っていただけませんか

  • このカーネルパニックの原因は何ですか?
  • この問題をどのように解決しますか?
  • どのようなログ(存在する場合)で詳細な情報が得られますか?
  • これは古いインストールなので、アップデート/アップグレードでこの問題が修正される可能性はありますか?

また、レイドミラーリングされたルートディスクに障害が発生し、これが発生する前に交換されたことが、関連する他の唯一の問題であることも付け加えておきます。

ご協力いただきありがとうございます!

2
Tbuermann

自分自身と他のすべての人に注意してください:

あきらめたときに無効にする代わりに、必ずdisable dと入力して、代わりにselinuxを無効にすることにします。

猫/ etc/sysconfig/selinux

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=TAKE_A_CLOSE_LOOK_AT_THIS_VALUE

SELINUX値のタイプミスは、カーネルパニックを引き起こします。

2
moander

Init = optionは警告メッセージであり、実際に使用するコマンドではありません。

初期化オプション

Initプロセスはカーネルによって最初に開始され、他のすべてのプロセスの祖先です。これらのオプションは、実行されるプログラムとその実行方法を制御します。名前

init — init時に実行するプログラム。あらすじ

init =ファイル名

デフォルトの/ sbin/initプログラムではなく、指定したバイナリをinitプロセスとして実行します。名前

http://oreilly.com/linux/excerpts/9780596100797/kernel-boot-command-line-parameter-reference.html

initを使用して、カーネルによって実行される初期コマンドを指定します。正常に起動しない場合、これをinit=/bin/bashまたはinit=/bin/shに設定できます。

通知のoption部分は、実行するファイルへのパスです。

システムがSELinuxなしで起動する場合、SELinux設定に何かが起こったと思います。複雑になる可能性のあるデバッグ。

0
jeffatrackaid