Linux配置虚拟RAID阵列
我的使用场景
要在RockPI里面搭建服务,存放重要数据.实现一个小型的raid
有2个存储器(本文中表示硬件意义上的磁盘),组成一个虚拟RAID阵列,形成镜像,避免其中1个损坏后数据丢失.
操作步骤
创建RAID
重点来了,需要安装mdadm软件包:
apt install -y mdadm
然后执行如下命令:
mdadm -C /dev/md1 -l 1 -n 2 /dev/sda1 /dev/sdb1
参数含义:
-C:要创建的块设备路径
-l:raid类型,支持0,1,4,5,6,10,
0是条带模式1是镜像模式,其他参考这个文章:https://www.cnblogs.com/zd520pyx1314/p/5896658.html
-n:用到的块设备数量
后面是两个块设备地址
会询问是否确定,输入y即可.
然后就可以在lsblk
列表里看到这个阵列了
使用方法和普通存储设备一样:
mkfs.ext4 /dev/md1
mkdir /mnt/vdisk1
mount -text4 /dev/md1 /mnt/vdisk1
查看阵列的信息
mdadm -D /dev/md1
反操作步骤
解除对阵列的挂载
在这之前确保里面的文件或目录没有在使用中:
umount /mnt/vdisk1
在mdadm中停止阵列
mdadm --stop /dev/md1
如果你用了硬件存储器来做阵列,需要对每个存储器用以下语句删除元数据,不然下次开机会发现阵列又出现了:
mdadm --zero-superblock /dev/sdb
用虚拟磁盘文件做阵列
参考这个文章,可以把磁盘文件挂载为块设备:
https://www.cnblogs.com/DragonStart/p/13801415.html
关于恢复数据
备份数据
假如真的发生了有一个设备损坏,导致少了一个镜像文件怎么办呢.不用慌.在mdadm创建阵列这一步,排除掉那个文件即可.即使是单个文件,也能创建成raid1,并进行读写操作.
恢复运作
更换坏掉的存储器后,把剩余的文件,复制一个到新存储器里,老办法重新创建阵列后即可恢复.
参考文章
https://blog.csdn.net/chenyouxu/article/details/47415985
https://www.cnblogs.com/xuyaowen/archive/2019/07/10/lustre-loop-device.html
https://www.cnblogs.com/zd520pyx1314/p/5896658.html
https://www.jianshu.com/p/f207c58642b0