mdadm 主要命令说明模式(7种):
Assemble:加入一个以前定义的阵列
Build:创建一个没有超级块的阵列
Create:创建一个新的阵列,每个设备具有超级块
Manage: 管理阵列(如添加和删除)
Misc:允许单独对阵列中的某个设备进行操作(如停止阵列)
Follow or Monitor:监控RAID的状态
Grow:改变RAID的容量或阵列中的设备数目
选项:
-A, --assemble:加入一个以前定义的阵列
-B, --build:创建一个没有超级块的阵列(Build a legacy array without superblocks.)
-C, --create:创建一个新的阵列
-F, --follow, --monitor:选择监控(Monitor)模式
-G, --grow:改变激活阵列的大小或形态
-I, --incremental:添加一个单独的设备到合适的阵列,并可能启动阵列
--auto-detect:请求内核启动任何自动检测到的阵列
-h, --help:帮助信息,用在以上选项后,则显示该选项信息
--help-options:显示更详细的帮助
-V, --version:打印mdadm的版本信息
-v, --verbose:显示细节
-b, --brief:较少的细节。用于 --detail 和 --examine 选项
-Q, --query:查看一个device,判断它为一个 md device 或是 一个 md 阵列的一部分
-D, --detail:打印一个或多个 md device 的详细信息
-E, --examine:打印 device 上的 md superblock 的内容
-c, --config= :指定配置文件,缺省为 /etc/mdadm.conf
-s, --scan:扫描配置文件或 /proc/mdstat以搜寻丢失的信息。配置文件/etc/mdadm.conf
-C 创建Raid (/dev/md0是我的raid名称)
-n 磁盘阵列个数
-l raid的级别,-x hostspare,待机磁盘,
--size 指定每块磁盘大小
--add -a : hotadd subsequent devices to the array
--remove -r : remove subsequent devices, which must not be active
--fail -f : mark subsequent devices a faulty
--set-faulty : same as --fail
--run -R : start a partially built array
--stop -S : deactivate array, releasing all resources
--readonly -o : mark array as readonly
--readwrite -w : mark array as readwrite
Options that are valid with management mode are:
--add -a : hotadd subsequent devices to the array
--remove -r : remove subsequent devices, which must not be active
--fail -f : mark subsequent devices a faulty
--set-faulty : same as --fail
--run -R : start a partially built array
--stop -S : deactivate array, releasing all resources
--readonly -o : mark array as readonly
--readwrite -w : mark array as readwrite
使用cat /proc/mdstat命令来查看一下RAID的状态
配置完后,需mdadm -D --scan>/etc/mdadm.conf 进行配置更新
停止阵列前,需umount 执行mdadm -S /dev/mdX
重新启动 执行 mdadm -As /dev/mdX
阵列组中移除硬盘 mdadm /dev/mdX -r /dev/sdX
阵列组中添加硬盘 mdadm /dev/mdX -a /dev/sdX
查看单个分区 mdadm -E /dev/sdX
[root@mail ~]# mdadm -C /dev/md5 -l 5 -n 3 -x 1 /dev/sd{b,c,d,e}1 mdadm: /dev/sdb1 appears to contain an ext2fs file system size=3132288K mtime=Thu Jun 13 17:39:02 2013 mdadm: /dev/sdb1 appears to be part of a raid array: level=raid5 devices=4 ctime=Thu Jun 13 19:41:15 2013 mdadm: /dev/sdc1 appears to contain an ext2fs file system size=3132288K mtime=Thu Jun 13 17:39:02 2013 mdadm: /dev/sdc1 appears to be part of a raid array: level=raid5 devices=4 ctime=Thu Jun 13 19:41:15 2013 mdadm: /dev/sdd1 appears to be part of a raid array: level=raid5 devices=4 ctime=Thu Jun 13 19:41:15 2013 mdadm: /dev/sde1 appears to be part of a raid array: level=raid5 devices=4 ctime=Thu Jun 13 19:41:15 2013 mdadm: largest drive (/dev/sdb1) exceed size (1044096K) by more than 1% Continue creating array? yes mdadm: array /dev/md5 started. [root@mail ~]# mdadm -C /dev/md1 -l 1 -n 2 /dev/sd{f,g}1 mdadm: /dev/sdf1 appears to contain an ext2fs file system size=2096448K mtime=Thu Jan 1 08:00:00 1970 mdadm: /dev/sdf1 appears to be part of a raid array: level=raid1 devices=2 ctime=Thu Jun 13 19:41:46 2013 mdadm: /dev/sdg1 appears to contain an ext2fs file system size=2096448K mtime=Thu Jan 1 08:00:00 1970 mdadm: /dev/sdg1 appears to be part of a raid array: level=raid1 devices=2 ctime=Thu Jun 13 19:41:46 2013 mdadm: largest drive (/dev/sdg1) exceed size (2096384K) by more than 1% Continue creating array? yes mdadm: array /dev/md1 started. [root@mail ~]# mdadm -Ds >> /etc/mdadm.conf [root@mail ~]# cat /etc/mdadm.conf ARRAY /dev/md5 level=raid5 num-devices=3 metadata=0.90 spares=1 UUID=1fb23f21:7be94495:e13cb744:a208b440 ARRAY /dev/md1 level=raid1 num-devices=2 metadata=0.90 UUID=9ae7eff0:81a98310:014c7156:78c847c7 [root@mail ~]# mdadm -Ds /dev/md5 /dev/md5: Version : 0.90 Creation Time : Thu Jun 13 21:03:51 2013 Raid Level : raid5 Array Size : 2088192 (2039.59 MiB 2138.31 MB) Used Dev Size : 1044096 (1019.80 MiB 1069.15 MB) Raid Devices : 3 Total Devices : 4 Preferred Minor : 5 Persistence : Superblock is persistent Update Time : Thu Jun 13 21:04:17 2013 State : clean Active Devices : 3 Working Devices : 4 Failed Devices : 0 Spare Devices : 1 Layout : left-symmetric Chunk Size : 64K UUID : 1fb23f21:7be94495:e13cb744:a208b440 Events : 0.4 Number Major Minor RaidDevice State 0 8 17 0 active sync /dev/sdb1 1 8 33 1 active sync /dev/sdc1 2 8 49 2 active sync /dev/sdd1 3 8 65 - spare /dev/sde1 [root@mail ~]# mdadm /dev/md5 -f /dev/sdb1 mdadm: set /dev/sdb1 faulty in /dev/md5 [root@mail ~]# mdadm -Ds /dev/md5 /dev/md5: Version : 0.90 Creation Time : Thu Jun 13 21:03:51 2013 Raid Level : raid5 Array Size : 2088192 (2039.59 MiB 2138.31 MB) Used Dev Size : 1044096 (1019.80 MiB 1069.15 MB) Raid Devices : 3 Total Devices : 4 Preferred Minor : 5 Persistence : Superblock is persistent Update Time : Thu Jun 13 21:08:03 2013 State : clean, degraded, recovering Active Devices : 2 Working Devices : 3 Failed Devices : 1 Spare Devices : 1 Layout : left-symmetric Chunk Size : 64K Rebuild Status : 10% complete UUID : 1fb23f21:7be94495:e13cb744:a208b440 Events : 0.6 Number Major Minor RaidDevice State 3 8 65 0 spare rebuilding /dev/sde1 1 8 33 1 active sync /dev/sdc1 2 8 49 2 active sync /dev/sdd1 4 8 17 - faulty spare /dev/sdb1 [root@mail init.d]# cat /etc/mdadm.conf MAILADDR root@localhost //当一个磁盘坏了的话,就会发送邮件 ARRAY /dev/md5 level=raid5 num-devices=3 metadata=0.90 spares=1 UUID=1fb23f21:7be94495:e13cb744:a208b440 auto=yes spare-group=group1 ARRAY /dev/md1 level=raid1 num-devices=2 metadata=0.90 UUID=9ae7eff0:81a98310:014c7156:78c847c7 auto=yes spare-group=group1 [root@mail ~]# service mdmonitor start //启动mdmonitor服务 Starting mdmonitor: [ OK ] 当md1的一个盘坏了的话,md5的磁盘的空闲盘就会飘逸过来
答案是,不一定.
如下rc.sysinit,是Centos的系统,如果有mdadm.conf才能启动raid.
1
2
3
|
if
[ -f
/etc/mdadm
.conf ];
then
/sbin/mdadm
-A -s
fi
|
但是,你可以没有配置文件,在启动后,用下面的方法启动
1
|
mdadm -A
/dev/md0
/dev/sd
[bcde]
|
另外,如果你的Soft Raid是在系统安装时建的,那么没有mdadm.conf也能启动raid.为什么啦,看日志
kernel: md: Autodetecting RAID arrays.
在内核的编译中有这么一句"Autodetect RAID arrays during kernel boot",所以会自动的加载.所以重起系统后raid都需要有配置文件.但这个必须文件类型为fd.也就是Linux raid auto.
这个是建议在Raid的成员中,每个硬盘有一个叫超级块(zero-superblock )的东西.记录在这个上面.所以如果给raid成员恢复成普通硬盘时,记的删除zero-superblock.
所以删除RAID中的硬盘的方法如下
1
2
3
|
mdadm --stop
/dev/md0
mdadm --remove
/dev/md0
mdadm --zero-superblock
/dev/sda
|
答案一样是不一定
当你给系统也做进来,当然那个有系统的不行,但你只做数据分区,基本都是没有问题的.只要你重装系统后,使用原来的启动命令(配置文件也行),来启动就可以了.
1
2
|
mdadm -A
/dev/md0
/dev/sd
[bcde]
mdadm -As
/dev/md0
(有配置文件时)
|
答案一样是不一定
在安装系统时选择raid时,一定要转成raid的分区类型,但如果安装完系统后自己使用命令来建,就不用.但最好是.
答案一样是不一定
和上面一样,分为安装系统时建soft raid,和安装后在建raid.在安装系统时,一定是在分区上建的,但安装完系统后手工建的raid,没有分区也行.但最好分一下修改成linux raid auto,这样可以不需要配置文件也能启动
在同步rebuilding的过程中,重起是没有问题的,重起完,会从上次同步的地方起开始同步