mdadm 创建RAID可以用整硬盘设备也可是硬盘设备上的一个分区。如果用整块硬盘,可以跳过分区这一步
分区,多个分区方法相同
[root@oraserver ~]# fdisk /dev/sdb
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-261, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-261, default 261):
Using default value 261
Command (m for help): t # 修改分区类型
Selected partition 1 # 如果只有一个分区会自动选择,如果有多个分区要手动指定,如:2或是3等
Hex code (type L to list codes): fd # 这里就是分区类型,fd是 Linux raid autodetect
Changed system type of partition 1 to fd (Linux raid autodetect)
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
分区后执行,与系统同步
#partprobe
创建RAID0 二块以上盘容量可以不相同,md0名子可以自定义
创建后名 激活 -l级别 -n硬盘分区数 硬盘分区
mdadm -C /dev/md0 -ayes -l0 -n2 /dev/sdb{2..3} # 或是 /dev/sdb1 /dev/sdc1 或是 /dev/sdb /dev/sdc
创建RAID1 二块盘容量相同,名子可以自定义
mdadm -C /dev/md1 -ayes -l1 -n2 /dev/sdb{2..3} # 或是 /dev/sdb1 /dev/sdc1 或是 /dev/sdb /dev/sdc
创建RAID5 最少三块盘容量相同,名子可以自定义
mdadm -C /dev/md5 -ayes -l5 -n3 /dev/sdb{2..3} # 或是 /dev/sdb1 /dev/sdc1 或是 /dev/sdb /dev/sdc
查看创建进度,到100%时就好了
cat /proc/mdstat
查看raid信息
mdadm -D /dev/md1
假如创建了RAID,但是没有生成 /etc/mdadm.conf 文件,那么系统重启后是
不会启用RAID的,这时候需要这样做:
# mdadm -A /dev/md1 /dev/sdc1 /dev/sdd1
生成配置文件(/etc/mdadm.conf):
echo 'DEVICE /dev/sd[cd]' > /etc/mdadm.conf
# mdadm -D -s >>/etc/mdadm.conf
echo 'DEVICE /dev/sd{c,d}1' > /etc/mdadm.conf
查看一下:
# cat /etc/mdadm.conf
ARRAY /dev/md0 level=raid5 num-devices=3 UUID=f8283de5:39c73d89:b9fbc266:fdceb416
格式化
mkfs -t ext3 /dev/md1
如果其只一块硬盘坏掉修复方法
1. 标记坏硬盘各分区为fail
[root@oraserver md1]# mdadm /dev/md1 -f /dev/sdc1
mdadm: set /dev/sdc1 faulty in /dev/md1
2. 从Array中移除;
[root@oraserver md1]# mdadm /dev/md1 -r /dev/sdc1
mdadm: hot removed /dev/sdc1
3. 安装新硬盘,代替坏硬盘。
[root@oraserver ~]# fdisk /dev/sdb
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-261, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-261, default 261):
Using default value 261
Command (m for help): t # 修改分区类型
Selected partition 1 # 如果只有一个分区会自动选择,如果有多个分区要手动指定,如:2或是3等
Hex code (type L to list codes): fd # 这里就是分区类型,fd是 Linux raid autodetect
Changed system type of partition 1 to fd (Linux raid autodetect)
Command (m for help): w # 保存
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
分区后执行,与系统同步
#partprobe
4. 将新硬盘各分区加入原 md1 Array;
[root@oraserver md1]# mdadm /dev/md1 -a /dev/sdb1
mdadm: added /dev/sdb1
查看同步进度,如果没有就是同步完成
root@oraserver ~]# mdadm -D /dev/md1
/dev/md1:
Version : 0.90
Creation Time : Thu Jan 16 12:23:55 2014
Raid Level : raid1
Array Size : 2097088 (2048.28 MiB 2147.42 MB)
Used Dev Size : 2097088 (2048.28 MiB 2147.42 MB)
Raid Devices : 2
Total Devices : 2
Preferred Minor : 1
Persistence : Superblock is persistent
Update Time : Thu Jan 16 12:31:45 2014
State : clean, degraded, recovering
Active Devices : 1
Working Devices : 2
Failed Devices : 0
Spare Devices : 1
Rebuild Status : 85% complete # 这项就是同步进度,如果没有就是同步完成
UUID : 0241b0db:c95ac45c:9111f5ab:b8eeeb68
Events : 0.10
Number Major Minor RaidDevice State
0 8 16 0 active sync /dev/sdb
2 8 32 1 spare rebuilding /dev/sdc
系统会自动开始在新硬盘分区上重建数据。
mdadm软RAID的删除方法和注意事项
删除整个RAID:
mdadm /dev/md1 --fail /dev/sdb1 --remove /dev/sdb1
mdadm /dev/md1 --fail /dev/sdc1 --remove /dev/sdc1
mdadm --stop /dev/md1
mdadm --remove /dev/md1
mdadm --misc --zero-superblock /dev/sdb1
mdadm --misc --zero-superblock /dev/sdc1
即: 先删除RAID中的所有设备,然后停止该RAID即可
为了防止系统启动时候启动raid
rm -f /etc/mdadm.conf
rm -f /etc/raidtab
检查系统启动文件中是否还有其他mdad启动方式
vi /etc/rc.sysinit +/raid\c
原创文章请注明转载自技术小站本文地址:http://www.i5i6.net/post/67.html,标题:linux下 mdadm 创建软RAID