[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

外部阵列抢占/dev/sda设备号



各位好,
小弟今日遇到一问题未能解决(到现在还在加班想办法T_T),希望各位大哥大姐叔叔阿姨能帮忙想想办法

在一台服务器上外接了一个磁盘阵列——我之前也遇见过这个问题,忘了后来怎么解决了,但是因此知道和设备型号无关,故略去——在安装完系统后重启,Grub引导失败,查看原因是机器把外接阵列识别成了 /dev/sda,本机硬盘变成了 /dev/sdb ,所以无法找到系统文件,因此无法起动
在网络上找到如下解决办法:http://www.kuqin.com/article/34storage_backup/823626.html
linux系统加载存储时,时常会出现本地的设备好sda被存储抢占,而本地变成sdb、 sdc等。这种现象是因为连接外部存储的适配器的优先级比本地的scsi/fc的适配器的优先级高造成的。出现这种情况os启动时会有swap报错,给系 统管理带来一些麻烦,但这个问题可以通过更改os的内核实现改变驱动顺序,具体过程如下。

1、修改/etc/modules.conf将本地的scsi卡或者光纤卡放置在后加的板卡后面.
   alias eth0 tg3
   alias eth1 tg3
   alias scsi_hostadapter1 aic79xx
   alias scsi_hostadapter qla2300 #再有些情况下修改这个文件就能解决问题。
2、如果修改modules.conf没有解决问题,开始下面的操作:
   # 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.21.img.gz
   # gzip -d initrd-2.4.21-el.img.gz
   # 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.21-el.img.gz initrd-2.4.21-el.img
   #cp initrd-2.4.21-el.img /boot
   #reboot
4、fdisk -l 完成操作。

但是在debian里没有这个/etc/modules.conf ,在 /etc/modprobe.d/alias 里也没有类似 alias scsi_hostadapter1 的片段
要是按下面那个办法来弄又太复杂了

我之前也遇到过这个问题(另一台服务器),后来不记得是怎么就给弄好了,哪位有办法?先谢过了

 
--
0000
MININEWS.INFO
Mininews是一个业界微新闻站点,添加xiaohuabot@hotmail.com为MSN好友
做最敏捷的媒体,人人都可以是记者,关注身边正在发生的事。[M]

Reply to: