重置现有 RAID 0 并在 RHEL9 上使用 mdadm 创建 RAID 10 阵列

发布: (2026年2月24日 GMT+8 00:14)
4 分钟阅读
原文: Dev.to

Source: Dev.to

介绍

Linux 的软件 RAID 可以使用 mdadm 实用程序进行管理。本指南展示如何:

  1. 在 RHEL 9 系统上重置已有的 RAID 0 阵列。
  2. 使用四个设备创建新的 RAID 10 阵列。

您需要能够通过 SSH 访问 RHEL 9 服务器,具备 root 或 sudo 权限,并拥有所需的存储设备(RAID 0 至少 2 块,RAID 10 需要 4 块)。


Source:

重置已有的 RAID 0 阵列

1. 确认活动阵列

cat /proc/mdstat

示例输出

Personalities : [raid0]
md0 : active raid0 sdc[1] sdb[0]
      10475520 blocks super 1.2 512k chunks

unused devices: 

2. 卸载文件系统

umount /dev/md0

3. 停止并删除阵列

mdadm --stop /dev/md0

4. 查找组成设备

lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT

示例输出

NAME               SIZE FSTYPE            TYPE MOUNTPOINT
sda                 50G                   disk
├─sda1               1G xfs               part /boot
├─sda2             600M vfat              part /boot/efi
└─sda3            48.4G LVM2_member       part
  └─rootVG-rootLV    4G xfs               lvm  /
sdb                  5G linux_raid_member disk
sdc                  5G linux_raid_member disk

5. 清除超级块

mdadm --zero-superblock /dev/sdb
mdadm --zero-superblock /dev/sdc

6. 清理配置文件

删除或注释以下文件中与 RAID 相关的条目:

  • /etc/fstab
  • /etc/mdadm/mdadm.conf

7. 重建 initramfs

dracut -f

在创建新阵列之前,可(可选)重启服务器。

构建 RAID 10 阵列

1. 验证要使用的设备

lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT

示例输出

NAME               SIZE FSTYPE      TYPE MOUNTPOINT
sda                 50G             disk
├─sda1               1G xfs         part /boot
├─sda2             600M vfat        part /boot/efi
└─sda3            48.4G LVM2_member part
  └─rootVG-rootLV    4G xfs         lvm  /
sdb                  5G             disk
sdc                  5G             disk
sdd                  5G             disk
sde                  5G             disk

2. 创建 RAID 10 阵列

**注意:**省略 --layout 将默认使用 near 布局。

mdadm --create --verbose /dev/md0 \
      --level=10 \
      --raid-devices=4 \
      /dev/sdb /dev/sdc /dev/sdd /dev/sde

示例交互

To optimalize recovery speed, it is recommended to enable write‑intent bitmap, do you want to enable it now? [y/N]? y
mdadm: chunk size defaults to 512K
mdadm: size set to 5237760K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

3. 验证新阵列

cat /proc/mdstat

示例输出

Personalities : [raid4] [raid5] [raid6] [raid10]
md0 : active raid10 sde[3] sdd[2] sdc[1] sdb[0]
      6983680 blocks super 1.2 512K chunks 3 offset-copies [4/4] [UUUU]
      [===>.................]  resync = 18.2% (1271808/6983680) finish=0.8min speed=115618K/sec
      bitmap: 1/1 pages [4KB], 65536KB chunk

unused devices: 

4. 创建文件系统

mkfs.xfs /dev/md0

5. 挂载文件系统

mkdir -p /mnt/md0
mount /dev/md0 /mnt/md0

6. 验证挂载

df -h

示例输出

Filesystem                 Size  Used Avail Use% Mounted on
/dev/md0                   6.6G   80M  6.6G   2% /mnt/md0
...

7. 在启动时启用自动组装

mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf

8. 将挂载点添加到 /etc/fstab

echo '/dev/md0 /mnt/md0 xfs defaults,nofail,discard 0 0' | sudo tee -a /etc/fstab

Completion

RAID 10 阵列现已构建、格式化,并配置为在后续重启时自动组装和挂载。重启服务器,并使用 cat /proc/mdstatdf -h 确认阵列状态。

0 浏览
Back to Blog

相关文章

阅读更多 »