linux使用mdadm创建软raid并挂载开机启动

mdadm是multiple devices admin的简称,它是Linux下的一款标准的软件 RAID 管理工具,今天我们就来试试使用这个工具制作一个软raid,我们准备了一台云服务器,另外挂载了两块20G的云盘做软raid0。

我们先查看挂载的新磁盘

fdisk -l

202507111711215049307270.png

1.使用wipefs命令查看下是否有分区信息

如果有多个磁盘,多个磁盘都要做如下清理操作。

wipefs /dev/vdb

如果返回空的话,就不用处理分区表了,如果有打印东西,我们需要进行清理下分区表信息

wipefs -a -f /dev/vdb

2.使用parted命令创建gpt分区并格式化

创建raid之前我们需要知道超过2T的话我们需要使用gpt,我们这里没有超过,但是也是可以使用gpt分区,如果超过2T就不能使用mbr分区
我们使用gpt分区做软raid

parted /dev/vdb
然后再输入
mklabel gpt
再输入
print
然后再输入,我们使用的全部容量
mkpart primary 0 21.5GB
提示警告,输入
Ignore
然后再次打印
print
可以看到已经创建了gpt分区了,我们退出
quit

202507111712033088926686.png

然后可以再次使用fdisk -l可以查看到新分区了。
202507111712176350620222.png

我们使用mkfs工具格式化分区为ext4

mkfs.ext4 -T largefile /dev/vdb1

另外一块vdc的云盘也同vdb一样操作

3.使用mdadm命令制作软raid并格式化

格式化完成以后我们可以开始做软raid了。
mdadm --create /dev/md0 --level=0 --raid-devices=2 /dev/vdb1 /dev/vdc1

命令参数介绍

/dev/md0 : 指创建的磁盘阵列的名称,如果有多个raid,可以按顺序往下编,比如/dev/md1
level=0 :指raid0,还有1、5、10等等,对应raid1、raid5、raid10
raid-devices=2 :指阵列的磁盘数量,2块盘就是2

创建中提示

mdadm: /dev/vdb1 appears to contain an ext2fs file system
size=20971484K mtime=Thu Jan 1 08:00:00 1970
mdadm: /dev/vdc1 appears to contain an ext2fs file system
size=20971484K mtime=Thu Jan 1 08:00:00 1970
Continue creating array?

直接填写y然后回车
202507111712535423870058.png

如上图就创建成功了,我们使用命令查询下raid信息

mdadm --detail /dev/md0

202507111713162737053865.png

接着我们创建文件系统

mkfs.ext4 /dev/md0

然后保存mdadm的配置文件信息

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

接着我们就创建挂载点进行挂载了,我们准备挂载到根目录的data目录

mkdir -p /data
mount /dev/md0 /data

4.将软raid0写入fstab实现开机启动挂载

如果想要开机自动挂载需要写入到fstab目录。
使用blkid查询UUID并记录下来。

/dev/md0: UUID="894bb771-3cb4-41f0-b521-e30a9333a59d" BLOCK_SIZE="4096" TYPE="ext4"

然后进行挂载

vim /etc/fstab
#添加
UUID=894bb771-3cb4-41f0-b521-e30a9333a59d /data ext4 defaults 0 0

保存退出,重启使用df命令查看是否已经自动挂载了。

202507111714523848776488.png

我们可以看到/data目录已经自动挂载了。

5.删除mdadm制作raid0

我们先查看下磁盘信息

lsblk
NAME      MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINTS
loop0       7:0    0  63.7M  1 loop  /snap/core20/2434
loop1       7:1    0  63.8M  1 loop  /snap/core20/2599
loop2       7:2    0 111.9M  1 loop  /snap/lxd/24322
loop3       7:3    0  89.4M  1 loop  /snap/lxd/31333
loop4       7:4    0  49.3M  1 loop  /snap/snapd/24792
loop5       7:5    0  44.3M  1 loop  /snap/snapd/23258
vda       252:0    0    40G  0 disk
├─vda1    252:1    0  39.9G  0 part  /
├─vda14   252:14   0     4M  0 part
└─vda15   252:15   0   106M  0 part  /boot/efi
vdb       252:16   0    20G  0 disk
└─vdb1    252:17   0    20G  0 part
  └─md127   9:127  0    40G  0 raid0 /data
vdc       252:32   0    20G  0 disk
└─vdc1    252:33   0    20G  0 part
  └─md127   9:127  0    40G  0 raid0 /data

可以看到创建的阵列挂载设备名称是md127,使用命令查看下阵列信息

mdadm -D /dev/md127

202507111737416739514384.png

然后开始我们的删除工作,首先我们需要取消挂载,编译fstab中添加的那一行挂载参数,然后umount

umount /dev/md127

然后停止阵列

mdadm -S /dev/md127mdadm: stopped /dev/md127

接着删除自动配置阵列文件

cat /dev/null > /etc/mdadm/mdadm.conf

然后删除raid阵列中的元数据,两块盘都要清理。

mdadm --zero-superblock /dev/vdb1mdadm --zero-superblock /dev/vdc1

按照上述操作raid0阵列就清理好了,开机以后就不会再自动安装配置阵列信息了,其他类型的阵列也是这么操作。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://sulao.cn/post/1085

评论列表

0%