mdadm构建软RAID中常见的几个问题

1.是用mdadm -C...创建raid时提示:

mdadm: error opening /dev/md0: No such file or directory

这主要是/dev/下没有md0这个设备文件,需要用mknod命令创建一个

mknod /dev/md0 b 9 0  #b为块设备,9为主设备号,0为次设备号

2.创建raid时提示:

mdadm: cannot open device /dev/sdb1: Device or resource busy

这个通常是因为/dev/sdb1已经被挂载到了某个目录下,解决的方法是:

umount /dev/sdb1

3.创建raid过程中进行格式化:

在raid初始化过程中,可以对该其进行格式化,但是要注意必须在raid初始化完成到一定程度才可以开始,比如对于ext2、ext3,默认情况下它们的inode信息要占到卷空间5%的大小,所以尽量在初始化完成到5%以上的时候,再开始格式化。

4.对于降级的raid强制激活:

当raid降级后,比如raid5掉一块盘,raid6掉2块盘,可以通过

mdadm -A --force /dev/md0 /dev/sdb1 /dev/sdc1

的方式使用raid。但要注意,当raid失效时,即raid5掉2块以上盘,raid6掉3块以上盘数,用--force仍然能将raid激活,但是这时候再向raid中写入数据,将会造成raid里的文件信息丢失。

5.降级raid的重建:

对于正在运行的raid,可以用add命令给其新增一块盘,如下:

mdadm --manage --add /dev/md0 /dev/sdd1

再cat /proc/mdstat,就可以看到raid重建的进度了

对于已经停止的raid,可以用

mdadm -A --force /dev/md0 /dev/sdb1 /dev/sdc1

先将降级的raid强制激活,

然后再运行

mdadm --manage --add /dev/md0 /dev/sdd1

6.将raid信息保存到配置文件:

在很多网上的教程中,给出的mdadm配置文件的路径是/etc/mdadm.conf,但我在Ubuntu 10.10和CentOS 5.0上发现,它们的配置文件路径为/etc/mdadm/mdadm.conf,所以保险起见,还是将配置文件同时放到两个目录下好

mdadm --detail --scan >> /etc/mdadm/mdadm.conf

mdadm --detail --scan >> /etc/mdadm.conf

mdadm配置文件的目的是使每次重启后系统能够重新识别到raid

7.对于一些特殊的系统,比如经过内核经过裁剪的嵌入式设备,只把配置信息写入/etc/mdadm.conf中可能仍然无法保证重启后系统能识别到raid,所以要自己做点手脚,我的方法是在/etc/init.d/rc.local中加入:

mknod /dev/md0 b 9 0
mdadm --assemble /dev/md0 $(echo $(fdisk -l 2>/dev/null | grep "Linux raid autodetect" | awk '{print $1}'))
mount /dev/md0 /mnt

这样,就可以使每次重启后,系统能重新获得raid的信息了,并将其mount到了/mnt下。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wyzwws.html