发布于2026-05-21 阅读(0)
扫一扫,手机访问
在银河麒麟操作系统中构建具备数据冗余能力的软RAID,有时会遇到一些“小麻烦”:系统明明识别了磁盘,但RAID配置环境就是没准备好。这背后,往往是几个关键环节被忽略了——RAID内核模块没启用、磁盘上残留着旧的分区信息、管理工具mdadm没安装,或者GPT签名干扰了设备识别。别担心,只要按步骤处理好这些前置条件,构建软RAID其实是个很清晰的过程。

软RAID的功能,说到底得靠内核里的几个模块来支撑,比如raid456、raid1、raid0。银河麒麟V10出于某些兼容性考虑,默认可能会把部分RAID模块列入黑名单。所以,第一步就是去“解禁”它们,并把管理工具准备好。
先检查一下当前系统加载了哪些相关模块:lsmod | grep -E "(raid|raid456|raid1|raid0)"。如果输出空空如也,或者缺少关键的raid456模块,那就需要动手了。
接下来,编辑黑名单配置文件:sudo vim /etc/modprobe.d/blacklist.conf。在里面找找看,有没有包含blacklist raid456、blacklist raid1或blacklist raid0的行。找到后,要么在行首加个#号注释掉,要么直接整行删除。
改完别忘了更新initramfs,让修改生效:sudo update-initramfs -u。完成后重启系统,再用lsmod命令验证一下,看到模块成功加载,心里就踏实了。
最后,确保管理工具mdadm已经安装。如果系统没预装,执行这条命令就行:sudo apt-get update && sudo apt-get install -y mdadm。工具到位,后续操作才能顺畅。
这一步非常关键,却容易被忽视。尤其是复用旧硬盘,或者NVMe盘重装系统后,磁盘上残留的GPT分区表信息,会严重干扰mdadm对设备的正确识别,甚至破坏RAID超级块。普通的格式化解决不了这个问题,必须把磁盘“签名”彻底抹掉。
首先,用lsblk -d -o NAME,MODEL,SIZE,TRAN命令列出所有磁盘,找准你要用的那几块。
然后,对每块准备加入阵列的磁盘,执行GPT擦除:sudo wipefs -a /dev/sdb(请将/dev/sdb替换为你的实际设备名)。
如果wipefs报错提示“device is busy”,说明磁盘可能有分区还被挂载着。先卸载所有关联分区:sudo umount /dev/sdb*,再重试擦除命令。
有时候wipefs可能还不够彻底,这时候就得祭出更“强硬”的手段——用dd命令直接覆盖MBR和GPT头尾的关键扇区:
sudo dd if=/dev/zero of=/dev/sdb bs=512 count=1 && sudo dd if=/dev/zero of=/dev/sdb bs=512 seek=1 count=1 && sudo dd if=/dev/zero of=/dev/sdb bs=512 seek=$(( $(blockdev --getsz /dev/sdb) - 1 )) count=1
操作完成后,别忘了执行sudo partprobe同步一下内核的磁盘信息缓存。至此,磁盘才算是一张真正的“白纸”,可以放心用于组建RAID了。
RAID1,也就是镜像阵列,它的理念很简单:一份数据,完整地复制到两块硬盘上。这种方案提供了最高级别的数据安全性,任意一块盘坏了,数据都完好无损,而且重建速度也快。非常适合做系统盘,或者存放最关键的业务数据。
开始前,先用lsblk | grep -E "(sdb|sdc)"确认一下,你选中的两块盘(这里以sdb、sdc为例)已经是“裸盘”状态,没有挂载也没有分区。
创建阵列的命令很直观:sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc。这里创建了一个名为/dev/md0的RAID1设备。
命令执行后,阵列会开始初始同步。你可以通过watch -n 1 cat /proc/mdstat这个命令实时观察进度,等它完成就行了。
同步完毕,就可以像对待普通硬盘一样,格式化为ext4文件系统:sudo mkfs.ext4 /dev/md0。
最后,创建个挂载点,把阵列挂载上去就能用了:sudo mkdir /mnt/raid1 && sudo mount /dev/md0 /mnt/raid1。
如果你既想要容错能力,又希望硬盘空间利用率高一点,RAID5是个折中的好选择。它采用分布式奇偶校验,只牺牲一块盘的容量,就能获得单盘故障的容错能力。最少需要三块同容量的硬盘。
准备好三块已经按第二步清理干净的裸盘,比如/dev/sdb、/dev/sdc、/dev/sdd。
创建阵列时,甚至可以多加一块盘作为热备盘,这样有盘故障时能自动顶替:sudo mdadm --create /dev/md0 --level=5 --raid-devices=3 --spare-devices=1 /dev/sdb /dev/sdc /dev/sdd /dev/sde。
创建后,用sudo mdadm --detail /dev/md0查看详情,确认状态显示为“State : clean, Active”,就说明阵列健康且已激活。
接着格式化并挂载:sudo mkfs.ext4 /dev/md0 && sudo mkdir /mnt/raid5 && sudo mount /dev/md0 /mnt/raid5。
想让这个阵列开机自动挂载?把它写入fstab文件就行:echo '/dev/md0 /mnt/raid5 ext4 defaults 0 0' | sudo tee -a /etc/fstab。
对于数据库、虚拟化这类对读写性能和数据安全都有极高要求的场景,RAID10往往是首选。它先做镜像(RAID1)保证安全,再做条带化(RAID0)提升速度,相当于强强联合。当然,门槛也高,至少需要四块物理盘,而且强烈建议使用同型号、同容量的硬盘,性能最均衡。
确认四块裸盘的设备名,例如/dev/sdb到/dev/sde。
创建RAID10阵列的命令和之前类似:sudo mdadm --create /dev/md0 --level=10 --raid-devices=4 /dev/sdb /dev/sdc /dev/sdd /dev/sde。
创建后,同样用sudo mdadm --detail /dev/md0验证。你会看到“Layout : near=2”这样的布局信息,以及“State : clean”的清洁状态。
为了让系统记住这个阵列配置,需要生成持久化的配置文件:sudo mdadm --detail --scan >> /etc/mdadm/mdadm.conf。
然后,更新initramfs,确保重启后阵列能自动被识别和激活:sudo update-initramfs -u。
最后一步,格式化并挂载,就可以投入使用了:sudo mkfs.ext4 /dev/md0 && sudo mkdir /mnt/raid10 && sudo mount /dev/md0 /mnt/raid10。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
4
5
6
7
8
9