【云开发学习-3】Linux下的RAID组管理
文章目录
1.为虚拟机添加5块1G大小的新硬盘。
打开系统查看新建硬盘
ls -l /dev|grep sd
2.建立RAID5组。
madadm --create --auto=yes /dev/md0 \
--level=5
--raid-devices=3
--spare-decices=1
/dev/sd/{a,b,c,d}
参数 | 含义 |
---|---|
mdadm –create –auto=yes | 建立raid组 |
/dev/md0 | 建立RAID组设备名称md0 |
–level=5 | RAID组级别为RAID5 |
–raid-devices=3 | RAID组中有3个成员盘 |
–spare-decices=1 | 有一个热备盘 |
/dev/sd/{a,b,c,d} | RAID组成员盘列表和热备盘列表 |
查看新创建的raid5
产看raid5详细信息
mdadm --detail /dev/md0|more
3.设置开机自动加载。
得到设备的uuid
将uuid保存到设备文件里面
编辑设备文件
编辑好后,保存退出
这样,每次启动后,raid5的设备文件名,都会固定是md0,而不会变化
4.分区,格式化,建立目录并挂载分区。
新建一个分区,设为主分区
fdisk /dev/md0
n
p
编号为一,开始柱面和结束柱面都采用默认值
1
回车
回车
建好后保存退出
P
w
查看新建立分区,md1p0就是我们刚才建立的分区
ls -l /dev|grep md
将分区格式化为 ext4文件系统
mkfs -t ext4 /dev/md0p1
新建一个空目录,将刚才格式化好的分区挂载到空目录
mkdir /mnt/raid
mount /dev/md0p1 /mnt/raid
查看挂载信息:查看到,该分区的大小是2G,挂载点是 /mnt/raid
df -h
在/mnt/raid 目录下新建的文件,都保存在了raid5组的分区上面
cd /mnt/raid
mkdir tt
touch abc
ls -l
5.模拟RAID组故障恢复
(1)手动标记故障硬盘
对md0 RAID组进行管理,管理的细节是将其成员盘sdc表示为故障盘
mdadm –manage /dev/md0 –fail /dev/sdc
表示结束后,我们查看raid组的详细信息
mdadm --detail /dev/md0
执行后查看到sync状态的硬盘有
/dev/sdb
/dev/sde
/dev/sdd
硬盘/dev/sdc的状态是 faulty
发现原来的热备盘sde自动变成了成员盘,而sdc做为故障盘不参与使用
(2)移除故障盘
mdadm –manage /dev/md0 –remove /dev/sdc
再次查看我们查看raid组的详细信息
mdadm --detail /dev/md0
故障盘就删除了
(3)添加新盘
将sdf添加到成员里面
mdadm –manage /dev/md0 –add /dev/sdf
再次查看我们查看raid组的详细信息
mdadm --detail /dev/md0
查看到sync状态的硬盘有
/dev/sdb /dev/sde /dev/sdd,spare状态的硬盘是/dev/sdf
(4)在整个过程中,查看文件是否丢失
无丢失
6.不再需要使用RAID组时停止该RAID5组。
删除分区挂载
删除挂载的配置文件
Umount /dev/md0p1
Rm /etc/mdadm.conf
stop选项停止read组的运行
将曾经用过的五块硬盘的raid信息全都删除掉
Mdadm --stop /dev/md0
Mdadm --misc –zero-superblock /dev/sd{b,c,d,e,f}
最终5块硬盘恢复为与raid 无关的普通硬盘