RAID有 0
1
10
5
6
等级别,RAID0 的性能很强,但是万一有一块盘坏了,整个阵列就废了,肯定不能用。RAID1 的安全性最好,读取速度也不错,但浪费空间,四块盘只相当于两块盘的空间。
RAID5 是这么个原理:交替在各个盘上写数据,这么看类似于RAID0,但是每写n-1个盘的数据,剩下的那个盘写的就不是数据,而是校验数据(parity)。这样一来,如果有一块盘坏掉,那么就可以用剩下的盘上的数据来恢复数据。即便你临时无法找到另一块盘来替换坏盘,阵列也能进入降级模式,重要的数据也可以直接读取备份出来。
1、 配置RAID5
使用 mdadm
这个工具来配置RAID5。
好比有三个盘 sda
sdb
sdc
:
创建RAID5:
mdadm--create/dev/md0--level=5--chunk=512--raid-devices=3/dev/sd[abc]--spare-devices=0
以上命令参数,
--create
表示创建
/dev/md0
是raid5卷的设备名
--level=5
指示要创建一个RAID5阵列
--chunk=512
表示使用512k的chunk(具体多大可自行百度)
--raid-devices=3
表示用3个盘来创建,/dev/sd[abc]
表示是 /dev/sda
/dev/sdb
/dev/sdc
三个盘
--spare-devices=0
表示不用后备盘。
执行后,再用这个命令检查一下raid状态:
cat /proc/mdstat
如果显示成这样,就表示正在创建raid5卷:
这里的recovery过程其实就是初始化raid5,过程中理论上可以关机,下次再开机会恢复,但是建议尽量还是等它完成再关机。盘多空间大的话过程会相当慢,你可能需要等待一个晚上。
初始化什么时候完成呢?当你机器的硬盘灯不亮了,它就完成了……完成初始化的raid状态是这样的:
如果第四排最后不是 [UUU]
而是别的什么,比如 [UU_]
,就要注意了。
查看详细的raid信息用这个命令:
mdadm --detail /dev/md0
三个盘都是 activesync
,在线,同步。
接下来对/dev/md0格式化。用这个命令:mkfs.ext4 /dev/md0
2、 挂载raid卷
在/mnt底下新建个目录:
mkdir /mnt/mdstorage //名称自己编
把 /dev/md0 挂上去:
mount /dev/md0 /mnt/mdstorage
成功了!
但是总不能每次都手工加载,所以要用vim或nano改一下 /etc/fstab
这个文件,把md0加到自动挂载列表里:
加上最后这一句。设备名可以用 /dev/md0
这样写,也可以用UUID表示。推荐的是用UUID。用 blkid/dev/md0
命令可以显示md0的UUID。
重启测试一下是否正常。