如何在 CentOS 中删除以前的 RAID 配置以便重新安装

如何在 CentOS 中删除以前的 RAID 配置以便重新安装

/dev/sda我有一台之前在 CentOS 5.5(和)下设置了软件 RAID1 的服务器sdb。我向服务器添加了两个额外的驱动器,并尝试重新安装 CentOS。CentOS 安装程序可以正常看到 2 个新驱动器(sdcsdd),但它没有将两个原始驱动器 sda 和 sdb 视为单独的驱动器。相反,它只显示驱动器/dev/mapper/pdc_... (Model: Linux device-mapper)。基本上,我需要做的是从这些驱动器上剥离所有 RAID 配置,并允许安装程序将它们视为单独的物理磁盘。

我尝试拔出除原始驱动器之外的所有驱动器,安装最小 CentOS 并运行dmraid -r -E,但它仍然看到旧的 RAID 分区。CentOS 安装选项(删除以前的分区等)似乎都不起作用。

答案1

这是一个老帖子,但它在 Google 上的排名很高,所以很多人阅读它,因此需要更新。

“正确”的方法是使用mdadmwith --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.

dd方法bs=<block size>也有效,但需要小心,因为并非所有超级块都写入磁盘的开头 - 有些写入磁盘的末尾。

更新:而是使用磁盘分区比其他任何方法都更适合擦拭

# wipe any GPT data or MBR data
gdisk /dev/sdc
    x = extra functionality
    z = zap GPT data structures (+ MBR also after)

来源:

答案2

对我来说,修复此问题最快(换句话说:最容易记住)的方法是启动到救援模式并用 dd 覆盖磁盘的前几千个字节:

dd if=/dev/zero of=/dev/sda bs=512 count=100

应该可以解决问题。这将覆盖 MBR、分区表和 RAID 的所有相关数据。

答案3

问题出在 CentOS Anaconda 安装程序上。Ubuntu 安装程序可以毫无问题地看到各个驱动器。即使在驱动器上进行完整的 Ubuntu 安装也无法清除 raid 位。最终,使用以下方法启动 Centos 安装程序,结果成功了

Linux 文本 nodmraid

这样安装程序就可以运行而无需检查现有的 RAID 配置,然后进行分区。

答案4

parted在 Knoppix 中使用root对我有用。

knoppix@microknoppix $ su
root@microknoppix $ parted <device>

(parted) print

这将列出设备上的分区。使用命令,rm #其中 # 是返回列表中的条目。它会告诉你它不能。再做一次,然后再次输入 print。它将在分区曾经所在的位置显示空白。使用Gparted确认未分配的空间。

重新启动 CentOS 7 安装程序并且一切正常。

相关内容