mdadm创建RAID
# 清理所有磁盘的分区表信息(以 /dev/sdb 和 /dev/sdc 为例)
wipefs -a -f /dev/sdb
wipefs -a -f /dev/sdc
# 使用 gdisk 为每块磁盘创建分区(以 /dev/sdb 为例)
gdisk /dev/sdb
在交互式界面中输入以下命令:
- o ➔ 创建新 GPT 分区表 (覆盖旧数据)
- n ➔ 新建分区:
- 分区编号,默认 1 (直接回车)
- 默认起始扇区 (直接回车)
- 默认结束扇区 (使用全盘空间)
- t ➔ 修改分区类型为
FD00
(Linux RAID 类型) - w ➔ 保存并退出
# 使用两个磁盘的分区(如 /dev/sdb1 和 /dev/sdc1)创建 RAID1
mdadm --create /dev/md88 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1
#参数说明:
#--level=1:RAID1 (镜像)
#--raid-devices=2:使用 2 块磁盘
cat /proc/mdstat # 查看同步进度
mdadm --detail /dev/md88 # 检查详细信息
## 查看UUID,配置在 /etc/fstab
blkid /dev/md88
## 格式化为 xfs
mkfs.xfs /dev/md88
# 禁用延迟写入(提高数据安全性)
#mkfs.xfs -l lazy-count=0 /dev/md88
#调整日志大小(适用于大容量 RAID):
#mkfs.xfs -l size=512m /dev/md88 # 设置日志为 512MB(默认 10MB)
# 保存 RAID 信息到配置文件(路径因系统而异)
mdadm --detail --scan | tee -a /etc/mdadm.conf
# 如果配置文件不存在,先创建基础配置
# 创建空配置文件
touch /etc/mdadm.conf
# 设置权限
chmod 644 /etc/mdadm.conf
chown root:root /etc/mdadm.conf
# 创建挂载点
mkdir /backup
# 临时挂载
mount /dev/md88 /backup
# 获取 UUID 并写入 /etc/fstab
UUID=$(blkid -s UUID -o value /dev/md88)
echo "UUID=$UUID /backup xfs defaults 0 0" | tee -a /etc/fstab
# 验证 fstab 配置
mount -av | grep backup
# 更新 initramfs(关键!!!)
# Debian/Ubuntu:
#update-initramfs -u
# RHEL/CentOS/Fedora:
dracut -f
###重启验证
init 6
# 重启后检查
mdadm --detail /dev/md88 # RAID 状态应为 "clean" ,也有可能在同步
df -hT /backup # 确认挂载成功
文章作者
上次更新 2025-04-29