安装第2块scsi卡和新的磁盘阵列柜后系统无法启动

阅读: 评论:0

安装第2块scsi卡和新的磁盘阵列柜后系统无法启动

安装第2块scsi卡和新的磁盘阵列柜后系统无法启动

系统是一台HP LH-6000,好像已经买了好多年,安装的是redhat 7.2, 一直运行正常。由于原来的硬盘空间不够,所以,给机器加了一张scsi卡,原来已经内置有一张(设置为raid5), 然后,插入一个外置的磁盘阵列柜。那知道,重新开机出现如下错误:
Mounting root filesystem
mount: error 6 mounting ext3
pivotroot: pivot_root(/sysroot, /sysroot/initrd) failed: 2
Freeing unused kernel memory: 240K freed
kernel panic: NO init found. Try passing init= option to kernel.

硬件在其它地方测试都是没问题的,如果将外置的磁盘阵列柜的关闭电源,重新开机又可以正常进入!

在网上查找,一般“mount: error 6 mounting ext3”都是说没有把ext3驱动编译到内核,但,原来的硬盘,已经是ext3格式了,可能性不大。

中间走了些弯路。不过,最后,似乎还是解决了。

主要是,开机自检的时候,先出现那种内置的scsi卡,然后,再检到新插进去的那张卡,所以,开始没想到“盘符”调乱了。

解决方法,很简单,如下:


· 在出现GRUB引导画面时,按字母e键,进入GRUB编辑状态。
· 按↑键或↓键选择相应的引导项,并再接字母e键进入命令行编辑。
· 在出现的命令行,将原来的
         kernel /vmlinuz-2.4.7-10 ro root=/dev/sdb2
        修改为:
         kernel /vmlinuz-2.4.7-10 ro root=/dev/sdc2
         并按回车键,返回GRUB编辑状态。
· 按字母b键,引导进入单用户模式。
·      过来自检,提示无法装载某些分区,按要求输入root密码进入管理模式
·      编辑/etc/fstab, 修改分区对应到新的转载点,保存
·      重新启动
·      修改 f 文件

ixpub 的 nntp 提了另外一种解决方法:

1. rescue mode login
2. adjust the order in your /f, (RHEL4 改为:/f)

3. rebuild initrd (参考:.php)

 

修改文件以后,需要重新编译initrd文件,使得在启动时该模块被正确插入到模块中。

# cp /boot/initrd-(kernel-version).img /boot/initrd-(kernel-version).img.bak
# mkinitrd -f initrd-$(uname -r).img $(uname -r)

例如

 
cp /boot/initrd-2.4.21-27.0.2.ELsmp.img /boot/initrd-2.4.21-27.0.2.ELsmp.img.bak
mkinitrd -v -f /boot/initrd-2.4.21-27.0.2.ELsmp.img 2.4.21-27.0.2.ELsmp

这个例子对一个运行2.4.21-27.0.2smp内核的系统重建了initrd.img,根据自己系统的实际运行版本自行条成mkinitrd的参数(可以使用uname -r得到本机运行的内核版本号)。

   * mkinitrd的-v参数可以显示initrd.img中包括的所有模块。* mkinitrd的-f参数可以强制覆盖initrd.img中已有的同名模块。

或者参考这里:外部存储抢占sda设备号的解决办法.html

linux系统加载存储时,时常会出现本地的设备好sda被存储抢占,而本地变成sdb、sdc等。这种现象是因为连接外部存储的适配器的优先级比本地的scsi/fc的适配器的优先级高造成的。出现这种情况os启动时会有swap报错,给系统管理带来一些麻烦,但这个问题可以通过更改os的内核实现改变驱动顺序,具体过程如下。
1、修改/f将本地的scsi卡或者光纤卡放置在后加的板卡后面.
   alias eth0 tg3
   alias eth1 tg3
   alias scsi_hostadapter1 aic79xx
   alias scsi_hostadapter qla2300 #再有些情况下修改这个文件就能解决问题。
2、如果修改f没有解决问题,开始下面的操作:
   # cp /boot/initrd-2.4.21-el.img /root/
   # file initrd-2.4.21-el.img -----该文件是一个压缩文件;
   # mv initrd-2.4.21-el.img initrd-2.4.
   # gzip -d initrd-2.4.
   # file initrd-2.4.21-el.img
    initrd-2.4.21-el.img:linux rev 1.0 ext2 filesystem data(mount or unclean)
   # mount initrd-2.4.21-el.img /mnt -o loop
   #cd /mnt
   #ls
    bin dev etc lib linuxrc loopfs proc sbin sysroot
   #vi linuxrc
    echo "loading aic79xx.o module"
    insmod /lib/aic79xx.o
    echo "loading qla2300.o module"
    insmod /lib/qla2300.o
  变更aic79xx和qla2300的上下位置。然后保存。
3、# cd /root
   # umount /mnt
   #gzip -9 initrd-2.4.21-el.img
   #mv initrd-2.4. initrd-2.4.21-el.img
   #cp initrd-2.4.21-el.img /boot
   #reboot
4、fdisk -l 完成操作。

 

本文发布于:2024-01-31 01:21:39,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170663530224323.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

上一篇:浅析fc
标签:磁盘   无法启动   系统   阵列柜   scsi
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23