您的位置:首页 > 大数据 > 人工智能

raid及mdadm命令

2017-07-01 21:05 148 查看
IDE:速率133Mbps,并行口
SATA:速率64Gbps,串行口
USB:串行
SCSI:UlTraSCSI ,320Mbps,并行 3.5英寸
SAS:2.5英寸,将SCSI实现串联

逻辑RIAD:
/dev/md0
/dev/md1

md:raid模块
mdadm:用于配置软raid,支持将任何块设备做成RAID
模式化命令:
创建模式
-C 创建
-l :级别
-n :设备个数
-a {yes|no}:自动为其创建设备文件
-c :指定数据块大小,一般为2的次方倍
-x :指定空闲盘个数,用于备用
管理模式
-a ,添加
-r ,移除
-f 模拟损坏
监控模式
-F 监控
增长模式
-G 增长
装配模式
-A 装配模式

实验都在一块磁盘的多个分区上进行,实际环境中则使用多块磁盘

实现1 ,使用两个分区创建一个2G的RAID0
可以使用4个512分区
或者2个1G分区

1.新建两个1G实验分区,调整为fd



[root@localhost ~]# partprobe /dev/sda 重读一下硬盘

确保新建分区能够使用



[root@localhost ~]# mdadm -C /dev/md0 -a yes -l 0 -n 2 /dev/sdb{1,2}

-l指定为raid0 -n设备个数为2 -C创建 -a自动创建设备文件
chunks显示的数据块大小为512k



条带=chunks/blocks
此时的2个分区已经合成为一个raid。直接当作一个硬盘使用就行了
[root@localhost ~]# mke2fs -j -E stride=16 -b 4096 /dev/md0 (直接格式化, -E指定条带大小为16 -b指定块大小为4096)注意stride值等于 cat/proc/mdstat里显示的chunks值/4
[root@localhost ~]# fdisk -l



md0已经显示为一个单独的设备了,大小为2G
[root@localhost ~]# mount /dev/md0 /mnt 挂载以后就可以直接使用了
[root@localhost ~]# mdadm -D /dev/md0 显示设备的相关信息
[root@localhost ~]# mdadm /dev/md0 -f /dev/sdb1 把md0中的sdb1模拟成损坏的命令,用于测试。
[root@localhost ~]# mdadm /dev/md0 -r /dev/sdb1 移除
[root@localhost ~]# mdadm /dev/md0 -a /dev/sdb9 找一块新的磁盘替换上去,注意磁盘大小保持一致
[root@localhost ~]# mdadm /dev/md0 -a /dev/sdb8 添加一块空闲盘,用于备用,当坏了以后自动顶上。

watch :将一个命令的执行结果以全屏的方式显示。默认每隔两秒钟刷新一次例如显示raid的状态信息,有利于发现硬盘损坏
-n指定周期长度。单位为秒
格式watch -n # 'COMMAND'

[root@localhost ~]# watch 'cat /proc/mdstat'

假如某个整列不想用了可以停止阵列
[root@localhost ~]# mdam -S /dev/md0
停止以后删除设备文件
[root@localhost ~]# rm /dev/md0

如果要将停止的阵列恢复
[root@localhost ~]# mdam -A /dev/md0 /dev/sdb1 /dev/sdb2
-------------------------------------
[root@localhost ~]# mdadm -D --scan 显示当前raid设备的UUID号ARRAY /dev/md0 metadata=1.2 name=localhost.localdomain:0 UUID=e13dcad4:b87889be:067ec73a:bb88afa2ARRAY /dev/md1 metadata=1.2 name=localhost.localdomain:1 UUID=d1f4b96f:0a66bdd0:cb68f0c4:df030ec7[root@localhost ~]# mdadm -D --scan > /etc/mdadm.conf以后会自动装配,(下次在停止设备-S,以后再恢复设备-A时系统直接读取此文件)[root@localhost ~]# mdam -S /dev/md0[root@localhost ~]# mdam -A /dev/md0 ------------------------------------------

创建raid1 的方法是一样的, 2G raid1
使用2个2G分区方法和上面一样---------------创建一个2G的raid5,至少需要3块盘使用率(n-1)/n三个1G的硬盘。 也支持空闲盘,如果需要一个空闲盘则使用四块1G硬盘
-----------------raid 0 1 先把两组2个1G的分区做成条带0 ,再把两个条带做成raid1 方法大致一样raid 1 0 则是先把两组2个1G的分区做成raid1,再把两个1G的raid1做成条带

这里演示raid 0 1


[root@localhost ~]# mdadm -C /dev/md0 -a yes -l 0 -n2 /dev/sdb{5,6}
[root@localhost ~]# mdadm -C /dev/md1 -a yes -l 0 -n2 /dev/sdb{7,8}
[root@localhost ~]# partprobe /dev/md0
[root@localhost ~]# partprobe /dev/md1
[root@localhost ~]# mdadm -C /dev/md2 -a yes -l 1 -n 2 /dev/md{0,1}



[root@localhost ~]# partprobe /dev/md2
[root@localhost ~]# cat /proc/partitions 确认系统已经读到了md2



[root@localhost ~]# mke2fs -j /dev/md2
[root@localhost ~]# mount /dev/md2 /tmp/bak/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  命令 raid mdadm