あるコンピュータから既存のLinuxインストールをインポートし、別のコンピュータから起動する

あるコンピュータから既存のLinuxインストールをインポートし、別のコンピュータから起動する

従来のDell Precision 690ワークステーション設定では、Windows XPおよびCentOS 5.5をデュアルブートできます。これらのオペレーティングシステムは、2つの別々のドライブにインストールされます。 Linux ドライブの grub メニューがドライブ 1 に設定され、ドライブ 2 の Windows ブート情報を指していました。

起動が可能かどうかを確認するために、新しいHP Z800ワークステーションにLinuxドライブをインストールしようとしましたが、成功しませんでした。起動するとすぐにいくつかのエラーが発生します。

システムは次のように表示されます。

このメッセージの後には、Red Hat nash version 5.1.19.6 starting次の行が表示されます。

Unable to access resume device (LABEL=SWAP-sda2)
mount: could not find filesystem '/dev/root'
setuproot: moving /dev failed: No such file or directory
setuproot: error mounting /proc: No such file or directory
setuproot: error mounting /sys: No such file or directory
switchroot: mount failed: No such file or directory
Kernel panic - not syncing: Attempted to kill init!

始めるために調整できるものはありますか?私はこのコンピュータにCentOS 5.5と独自のソフトウェアをリロードしたくありません。

このドライブにgrubメニュー設定がありますが、これは私の問題ですか?以前のシステムのドライブはLinuxをドライブ1に、Windowsをドライブ2に設定し、LinuxドライブはgrubメニューをホストしてLinuxまたはWindowsから起動できるようにしました。正確に何が起こっているのでしょうか?

私はこの問題に対するWindowsソリューションを知っています。システムにセカンダリHDDコントローラカードを取り付け、ドライバをインストールし、ドライブを古いシステムのコントローラに接続して起動していることを確認し、ドライブとコントローラを新しいシステムに移動して起動を終了し、マザーボードドライバ(特にハードドライブコントローラドライバ) )をロードしてコントローラカードを取り外し、ハードドライブをマザーボードに直接接続すると、すべての作業が完了します。 Linuxでも同じことができますが、わかりません。他の方法がなければ、これが最後の手段になる可能性があります。

ベストアンサー1

これまで、これはブートローダがカーネルとinitrd / initramfsを正常にロードしたが、カーネルがルートデバイスを見つけられなかったことを意味します。したがって、root=/dev/sda42カーネルコマンドラインに次の内容を渡して起動できる必要があります。

GrubプロンプトでLinuxエントリを編集しますlinux。その行には同様のパラメータが必要ですroot=/dev/sda42root=/dev/sdb42つまり、別のドライブに変更してください。現在の文字ではないかもしれませaんし、有効な文字ではないかもしれませんb。ただし、2台のドライブがある場合は、交換する必要sdbsdaあります。

Linuxのドライブ文字の順序は、BIOS、Grub、またはWindows(または少なくとも直接)の順序とは関係ありません(ドライバがロードされる順序によって異なります)。 (この問題を解決する方法はいくつかありますが、今は役に立ちません。)

起動時に現在のディスクデバイス名と一致しないエントリがあると、/etc/fstabエラーが発生する可能性があります。回復コンソールにアクセスできない場合は、再起動し(変更に加えてroot=init=/bin/shシェルに直接追加してから、次の手順を実行します。

mount /proc
mount -o remount,rw /
vi /etc/fstab    # or whatever your favorite editor is

おすすめ記事