CentOS 5.5(_/dev/sda
_およびsdb
)でソフトウェアRAID1を使用して以前にセットアップされたサーバーがあります。サーバーに2つのドライブを追加し、CentOSを再インストールしようとしました。 CentOSインストーラーは2つの新しいドライブ(sdc
とsdd
)を正常に認識しますが、2つの元のドライブsdaとsdbを個別のドライブとして認識しません。代わりに、ドライブ/dev/mapper/pdc_... (Model: Linux device-mapper)
のみが表示されます。基本的に私がする必要があるのは、これらのドライブからすべてのRAID構成を取り除き、インストーラーがそれらを個別の物理ディスクとして認識できるようにすることです。
元のドライブの1つを除くすべてのドライブをプルし、最小限のCentOSをインストールして、_dmraid -r -E
_を実行しようとしましたが、古いRAIDパーティションが表示されます。 CentOSのインストールオプション(以前のパーティションの削除など)はどれも機能していないようです。
問題はCentOSAnacondaインストーラーにありました。 Ubuntuインストーラーは、個々のドライブを問題なく確認できました。ドライブにUbuntuを完全にインストールしても、レイドビットはクリアされませんでした。最終的に機能したのは、Centosインストーラーを使用して起動することでした
linuxテキストnodmraid
これにより、既存のRAID構成をチェックせずにインストーラーを実行できるようになり、パーティション分割が行われました。
これは古いスレッドですが、Googleで上位にランクされているため、多くの人が読んでおり、更新する必要があります。
「正しい」方法は、mdadm
を--zero-superblock
とともに使用することです。
## If the device is being reused or re-purposed from an existing array,
## erase any old RAID configuration information:
mdadm --zero-superblock /dev/<drive>
## or if a particular partition on a drive is to be deleted:
mdadm --zero-superblock /dev/<partition>
man mdadm
--zero-superblock
If the device contains a valid md superblock, the block is overwritten with zeros.
With --force the block where the superblock would be is overwritten even if it doesn't appear to be valid.
bs=<block size>
を使用したdd
メソッドも機能しますが、すべてのスーパーブロックがディスクの先頭に書き込まれるわけではないため、注意が必要です。一部はディスクの末尾に書き込まれます。
Update:他のどの方法よりもワイピングにgdiskを使用する
# wipe any GPT data or MBR data
gdisk /dev/sdc
x = extra functionality
z = zap GPT data structures (+ MBR also after)
ソース:
私にとって、これを修正する最も速い(言い換えれば:覚えやすい)方法は、レスキューモードで起動し、ディスクの最初の数千バイトをddで上書きすることです。
dd if=/dev/zero of=/dev/sda bs=512 count=100
トリックを行う必要があります。これにより、MBR、パーティションテーブル、およびRAIDに関連するすべてのデータが上書きされます。
これにも出くわした。バージョン0.90は、ソフトウェアRAID情報をディスクの最後に配置します。代わりに、ddを使用して最後の数MBをゼロにすることをお勧めします。
Knoppixでparted
をroot
として使用するとうまくいきました。
knoppix@microknoppix $ su
root@microknoppix $ parted <device>
(parted) print
これにより、デバイス上のパーティションが一覧表示されます。コマンドrm #
を使用します。ここで、#は返されたリストのエントリです。それはできないとあなたに言うでしょう。もう一度やり直してから、もう一度printと入力します。パーティションがあった場所に空白が表示されます。 Gparted
を使用すると、未割り当て領域が確認されます。
CentOS 7インストーラーを再起動すると、すべて正常に動作しました。