我安装了 CentOS 6.5,它是使用软件 raid 设置的(如中所述这个官方文档)。有 3 个硬盘,我正在运行 RAID1:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb 8:16 0 931.5G 0 disk
├─sdb1 8:17 0 2G 0 part
│ └─md1 9:1 0 2G 0 raid1 [SWAP]
├─sdb2 8:18 0 256M 0 part
│ └─md0 9:0 0 256M 0 raid1 /boot
└─sdb3 8:19 0 929.3G 0 part
└─md2 9:2 0 929.1G 0 raid1 /
sda 8:0 0 931.5G 0 disk
├─sda1 8:1 0 2G 0 part
│ └─md1 9:1 0 2G 0 raid1 [SWAP]
├─sda2 8:2 0 256M 0 part
│ └─md0 9:0 0 256M 0 raid1 /boot
└─sda3 8:3 0 929.3G 0 part
└─md2 9:2 0 929.1G 0 raid1 /
sdc 8:32 0 931.5G 0 disk
├─sdc1 8:33 0 2G 0 part
│ └─md1 9:1 0 2G 0 raid1 [SWAP]
├─sdc2 8:34 0 256M 0 part
│ └─md0 9:0 0 256M 0 raid1 /boot
└─sdc3 8:35 0 929.3G 0 part
└─md2 9:2 0 929.1G 0 raid1 /
sr0 11:0 1 1024M 0 rom
我现在想将此系统移至 Hyper-V,但使用 mondorescue 在不设置三个虚拟驱动器的情况下恢复它时遇到问题。我们不我希望在新的虚拟化环境中使用 RAID,因此我想在使用 mondo 创建克隆之前先将其完全删除。
根据我所读到的内容,我需要停止数组并删除它们:
mdadm --stop /dev/md0
mdadm --remove /dev/md0
mdadm --stop /dev/md1
mdadm --remove /dev/md1
mdadm --stop /dev/md2
mdadm --remove /dev/md2
然后我可以摆脱超级块:
mdadm --zero-superblock /dev/sda
mdadm --zero-superblock /dev/sdb
mdadm --zero-superblock /dev/sdc
但此时,我想确保 a) 数据完好无损(至少在/dev/sda
),b) 我可以再次启动到此。本质上,我希望它查看第一个硬盘,就好像它一开始就没有进行 RAID 设置一样。
通过停止阵列并删除超级块,这是否有效地“删除软件 RAID”,或者是否有其他步骤来实现我想要的?