|
发表于 2004-12-16 16:39:27
|
显示全部楼层
转发 羊(flaunt@rest7.com) 的解答
我在做实验时,发现RedHat Enterprise AS3的/etc/rc.sysinit有个小bug
如果我在做raid的基础上把raid做到LVM里面去,重启系统时,会报告出错。
例如:
1、编辑/etc/raidtab #设一个任意级别的 md0
2、mkraid /dev/md0 #假设一切都正常,该raid则可使用了
3、pvcreate /dev/md0 #建立LVM的pv
4(方法一)、vgextend VGname /dev/md0 #把md0加到现有vg中
4(方法二)、vgcreate VGname /dev/md0 /dev/sdax #新建一个vg
5、lvcreate -L 5G -n newlv VGname #在VGname这个vg中建立一个5G
的名字newlv的lv
6、mkfs.ext3 /dev/VGname/newlv #格式化成ext3文件系统
7、把/dev/VGname/newlv加到/etc/fstab中
8、reboot
你会发现系统出错。原来/etc/rc.sysinit在启动raid时,是根据/etc/fstab这个文件来的,如
果/etc/fstab中没有以/dev/mdx开头行,则不启动/etc/raidtab中的md0、md1 .....,重启系统,
你会发现启动raid时有(skiped)的东东。如果这个raid是属于LVM中的一个pv,所以在
启动LVM的时候,也跟着出错。
临时办法倒是有:编辑/etc/rc.sysinit,因为在rc.sysinit文件中确定/etc/fstab中是否有raid是
用的grep命令:
INFSTAB=`LC_ALL=C grep -c "^$i" /etc/fstab`
其中INFSTAB是确定命令是否成功的变量,$i是/etc/raidtab 文件中的md0或md1...etc,
把$i前面的^去掉即可。 |
|