2台のハードドライブを搭載したCentOS 6サーバーがあります。古い3TBドライブで問題が発生したため、新しいドライブに移動します。私の/
および/home
パーティションはLVMによって管理されているため、新しいドライブに簡単に移行できます。今、私は/boot
パーティションとそれをすべて起動させるMBR。
ライブCDをロードし、rsynced
を/boot
パーティションを新しいドライブの同じサイズのパーティションに変更します。また、次のコマンドを使用してMBRをコピーしようとしました。
dd if=/dev/sda of=mbrbackup bs=512 count=1
dd if=mbrbackup of=/dev/sdb bs=446 count=1
これを行った後、再起動し、起動サイクル中に古いハードドライブを確認せずに新しいドライブのみを確認するようBIOSに指示しましたが、カーソルが点滅するだけで終わりました。
ここで一歩逃した?または、古いドライブを完全に削除できるように、起動するために何か他に必要なことはありますか?
編集:私はrsyncが/ bootパーティションをあるドライブから別のドライブにコピーする方法ではなかったと思い始めています。 このガイド に基づいて、代わりにダンプコマンドを使用してみました。このコマンドでは、マウントされていない古いブートパーティションを、新しい空のマウントされたブートパーティションにコピーしました。
dump -0f - /dev/sdaX | (cd /mnt/boot; restore -rf -)
起動時にグラブエラー15が発生します。これはカーソルの点滅よりも優れていますが、それが解決策に近いかどうかはわかりません。
2つのハードディスクのサイズが同じ(または新しいハードディスクの方が大きい)場合、古いディスクを新しいディスクにコピーしないのはなぜですか?つまり.
dd if=/dev/sda of=/dev/sdb
ここで、新しいハードディスクの方が大きい場合は、パーティションサイズをpartedまたはgpartedに変更します。これはすべて、ライブCD/USBスティックからの起動です。
Rbootまたはダンプを使用して/ bootパーティションをコピーすることが問題の原因であることがわかりました。上記のエリックの答えに基づいて、ライブCDをレスキューモードで起動し、次のddコマンドを実行しました。
dd if=/dev/sda of=mbrbackup bs=512 count=1
dd if=mbrbackup of=/dev/sdb bs=446 count=1
dd if=/dev/sda1 of=/dev/sdb1
最初の2つのddをもう一度実行して、すべてが正しくコピーされ、すべてのテストで破損していないことを確認しました。次に、3番目のddを実行して、ブートパーティションを古いドライブから新しいドライブにコピーしました。その後、シャットダウンして古いドライブを引き出し、問題なくCentOSにブートしました。
マウントされたドライブでダンプを使用することにより、コピーが正常に機能しなくなる問題があったはずです。とにかく、ddはトリックをしました。皆様のご協力ありがとうございます。
Ddではなく、新しいボリュームを作成しました。手順は増えますが、問題をコピーするのではなく修正する場合があります。破損した/ bootが小さすぎました。また、cento7とgrub2を併用していました。そのため、私の指示では、psusiが示唆するように、いくつかの調整またはgrub2へのアップグレードが必要になります。変更点に注意してみました。
注:「/ dev/sdx」を使用する場合、「sdx」を、/ bootにしたいディスク/ボリュームの名前に変更する必要があることを知っていると想定しています。
参照: http://www.ocztechnologyforum.com/fo...226#post373226http://www.patriotmemory.com/forums/...ead.php?t = 3696http://thunk.org/tytso/blog/2009/02/...se-block-size/https://ubuntuforums.org/showthread .php?t = 1528529https://wiki.centos.org/HowTos/Grub2
問題は、そのようなMBRをコピーするためにdd
を使用すべきではないということです。新しいドライブにGRUBを再インストールするだけで、正しく更新されたMBRを取得できます。 MBRには、ダンプを復元したときに変更されたgrubステージ2ファイルの場所が含まれています。
また、grubのレガシーは何年も維持されておらず、grub2は非lvm/bootパーティションを必要としないため、grub2にアップグレードする必要があります。