RAIDコントローラの交換後にSLES 11が起動しない

RAIDコントローラの交換後にSLES 11が起動しない

RAIDを担当するハードウェアが破損して交換された後、正しくブートが停止したサーバー(SUSE Linux Enterprise Server)を修理する必要があります。

次のメッセージが表示され、起動プロセスが中断されました。 Waiting for device /dev/disk/by-id/scsi-360{...}-part1

構造システムを実行するためにSLES 11のライブISOを見つけようとしましたが、12〜15個しか見つかりませんでした。だからバージョン15をダウンロードし、そこから救助システムを実行しました。

ここで見つかった scsi ID (エラーと同じ) が /dev/disk/by-id/scsi-..... のものと異なるため、fstab が正しくないことがわかります。

この問題を解決するために見つけた内容によれば、fstabを正しいIDまたはパーティション名(sda、sdb ...)に手動で変更することで問題が解決します。それで、パーティション名を変更し(ここでディスクIDだけを入力する必要がありますか?)、Web上の指示に従い、非常に間違ったことをしました。 fstabを変更した後に実行する必要がありますgrub-install --root-directory=/mnt /dev/sdaが、SLE 15でLive USBを使用しているため、grubは使用できず、grub2のみが使用できます。だから、 grub2-install を実行します。これで grub Legacy とともに grub2 がインストールされます。今すぐ起動しようとすると、 grub エラーが発生します。Welcome to GRUB! error: disk 'hd1,msdos1' not found. Entering rescue mode...

今、問題がどこにあるのかよくわかりません。幼虫が二匹あったのでしょうか? (そうだと仮定します。) もしそうなら、私の計画は grub2 を削除してこれを実行することです。ツールUbuntuライブペンを試してみてください。しかし、grub2を削除する方法は?

それとも問題が別の場所にありますか?

ここに画像の説明を入力してください。 /disk/by-id/ の代わりに /dev/sdx を使用するように変更した後の fstab です。

Unixの専門家の助けを求めてください。

- 古いfstab ここに画像の説明を入力してください。

私が確認したblkidsに対応するパーティションを取得するには(ここにいくつかの不正確さがあるかもしれませんが、Ubuntu Live USBを使用してパーティションを閲覧することができたので正しいようです...) ここに画像の説明を入力してください。

chroot を使用して grub 構成ファイルを確認します。 ここに画像の説明を入力してください。

修正する:

mkinitrdを実行するとエラーが発生します。 ( Root device(/dev/sda1) not found sdXのすべての参照をby-idに変更すると、同じ問題が発生し、partition-idと同じエラーが表示されます。)

実行すると、yast bootloaderコンソールの更新が停止します。 Ctrl+C を押した後も同様です。しかし、「restart」と入力しましたが、うまくいったので、入力を続けます。

ベストアンサー1

あなたの話を見ていますが...

起動プロセスは次のメッセージで中断されます:/dev/disk/by-id/scsi-360{...}-part1デバイスを待っています

Linuxでファイルシステムをマウントする方法はいくつかあります。

  • 名前別(例:/dev/sda)
  • あなたの質問のようなby-id
  • タグ別、分割タグセットを含める
  • もう1つか2つがあります。興味がある場合は、お問い合わせください。

私の考えでは、説明しない多くの問題を避けるために、idまたはuuidでマウントすることをお勧めします。ただし、状況が変わったときにscsi-idを更新することを忘れた場合は、簡単に失敗する可能性があります。 新しいRAIDコントローラは既存のボリュームに異なるscsi-idを提供しますが、これは問題です。

by-name1つのディスクまたは1つのRAIDボリュームしかない限り、インストールは安全です。それではいつもそうでしょう/dev/sda#。だから私の提案は

  • 起動ディスク以外のすべてのディスクを取り外します。
  • オペレーティングシステムには1つのブートディスクまたはRAIDボリュームしかありません。他のすべてのディスクからケーブルを一時的に外します。
  • これは、ブートパーティションがOSルートパーティションと同じディスクまたはRAIDボリュームにあると想定します。技術的には、ブートパーティションをルートパーティション以外のディスクに配置することができますが、妥当な理由がなければそれをしたくありません。 。
  • マウントされたルートパーティションとスワップ/etc/fstabのみを参照するようにファイルを編集します。/dev/sda技術的には、fstabに起動またはefiパーティションは必要なく、起動の要件もありません。最初の写真で見ると誤字だと思いますがsdd1swapそうですかsdasdd別のディスクだからですsda。技術的に起動してシステムを実行するためにスワップをインストールする必要がないため、正しいパーティション番号を持つ/dev/sda# / defaults 0 01つのルートパーティションだけでルートパーティションをマウントできます。#
  • SLES 11は次の点で素晴​​らしいです。エリヨGRUBまたはGRUB2の代わりに。 eliloを使用していることがわかっている場合は、次のことを行う必要がありますelilo.confブートパーティション以下よりも/etc/。ここでは、古いパーティションと無効なパーティションscsi-idを介して呼び出されたブートパーティションへの参照を見ることができます。/dev/sda#ディスク(またはRAIDボリューム)が1つしかないように、簡単に変更できます。ここで、#は正しいパーティション番号(通常1)です。同じアイデアや原則がグラブにも当てはまります。 grubのディスクのscsi-idへのすべての以前の参照を変更する必要がありますsda。これで、システムを起動し、すべてのものについて新しいscsi-idを認識して更新します。 elilo.conf または grub ファイルと/etc/fstab

splash=silentに変更することを検討してくださいsplash=verbose

ライブブートCDと写真を使用して正しい情報を表示したので、/dev/disk/by-id技術的にすべての内容を入力できますが、dev/sda#最初に入力してからコピーして貼り付ける方が簡単です。

最後の写真にはと書かれていますroot = /dev/disk/by-id/blabla。ディスク固有のIDで示されているすべての場所で/dev/sda#aがある場合は、に変更し、part1#= 1、part2#= 2などに変更します。 sles 11のgrubコマンドが「私を編集しないでください」とマークされたmenu.lstの編集に加えて、適切なアップデートをどのように実行するのかわかりません。ブートパーティションでmenu.lstを手動で編集することができ、今は機能しますが、新しいカーネルアップデートが発生すると、グローバルgrubテンプレート(おそらく/ etc以下)を参照するため、この問題が再発生します。申し訳ありません。私はRHEL7でのみ知ってgrub2-mkconfig編集します/etc/default/grub.conf。 sles11 で grub または grub2 にどのプログラムが使用されているかを調べる必要があります。

おすすめ記事