linux系统安装hba驱动,RedHat Linux下的HBA驱动安装

(1) 从Qlogic的网站(

www.qlogic.com

)上下载QLA22xx在RedHat下的驱动程序:qla2xxxsrc-vx.yy.tgz,您既可以下载到软盘,也可以直接下载到主机的某个目录文件夹;

(2) 一般,在RedHat下的安装方法有两种:下面我们分别进行介绍:

I. 建立可以自动加载驱动的用户内核

9 确认内核头文件和源文件RPMs已经安装上:

# rpm -qa | grep kernel

如果还没有安装,请用如下命令从CDROM安装:

# rpm -i kernel-source*

QLOGIC QLA22OO 使用手冊 31

# rpm -i kernel-headers*

9 采用以下步骤,建立用户内核:

# mkdir /usr/src/linux/drivers/scsi/qla2xxx/

# cd /usr/src/linux/drivers/scsi/qla2xxx/

# mcopy a:*.tgz . (最后的“.” 勿遗漏)

# tar -xvzf *.tgz

# rm -f makefile

# cp -f Makefile.kernel Makefile

9 在内核SCSI目录下编辑Makefile文件:

# cd /usr/src/linux/drivers/scsi

# vi Makefile

a. 找到“subdir-$(CONFIG_SCSI_AIC7XXX) += aic7xxx”

b. 在其下面添加如下内容

subdir-$(CONFIG_SCSI_QLOGIC_QLA2XXX) += qla2xxx

ifeq ($(CONFIG_SCSI_QLOGIC_QLA2XXX_QLA2200),y)

SUB_DIRS += qla2xxx

MOD_IN_SUB_DIRS += qla2xxx

else

ifeq ($(CONFIG_SCSI_QLOGIC_QLA2XXX_QLA2200),m)

MOD_IN_SUB_DIRS += qla2xxx

endif

endif

ifeq ($(CONFIG_SCSI_QLOGIC_QLA2XXX_QLA2300),y)

SUB_DIRS += qla2xxx

MOD_IN_SUB_DIRS += qla2xxx

else

ifeq ($(CONFIG_SCSI_QLOGIC_QLA2XXX_QLA2300),m)

MOD_IN_SUB_DIRS += qla2xxx

endif

endif

c. 找到“obj-$(CONFIG_SCSI_QLOGIC_QLA2100) +=qla2x00.o”

d. 在其下面添加如下内容

obj-$(CONFIG_SCSI_QLOGIC_QLA2XXX_QLA2200)

+= qla2xxx/qla2200.o

e. 在Makefile文件的最后添加如下的内容:

qla2xxx/qla2200.o:

cd qla2xxx; make qla2200.o

9 在kernel/scsi目录下面编辑Config.in文件: 32 QLOGIC QLA22OO 使用手冊

# cd /usr/src/linux/drivers/scsi

# vi Config.in

找到“dep_tristate ’Qlogic QLA 2100 FC SCSI support’

CONFIG_SCSI_QLOGIC_QLA2100 $CONFIG_SCSI

dep_tristate ’Qlogic QLA 2200 FC SCSI support’

CONFIG_SCSI_QLOGIC_QLA2200 $CONFIG_SCSI”

添加:

source drivers/scsi/qla2xxx/Config.in

9 删除旧的Qlogic FC HBA驱动,使之不影响现在安装的新的驱动:

# cd /usr/src/linux/drivers/addon/qla2200

# mv qla2200.o qla2200_rh.o

# mv qla2300.o qla2300_rh.o

# cd lib/modules//drivers/addon/qla2200

# mv qla2200.o qla2200_rh.o

# mv qla2300.o qla2300_rh.o

9 将配置内核以加载新的Qlogic驱动:

# cd /usr/src/linux

# make menuconfig

菜单配置如下:

Main Menu,选择SCSI Support,按回车ENTER

SCSI Support Menu,选择SCSI Generic Support,按空格键两次

选择SCSI low-level drivers,按回车ENTER

SCSI low-level drivers Menu,下拉选择

Qlogic 2xxx v6 FC SCSI support,按回车ENTER

选择Qlogic QLA 2200 v6 FC SCSI support,按空格键两次

退出Main Menu.

系统会提示:Do you wish to save your new kernel configuration?

选择Yes,系统会在当前目录保存新的配置文件

9 创立可以引导的内核映象:

# make dep bzImage modules modules_install

II. 从源代码安装,这里又可分为单处理器主机和多处理器主机

A) 单处理器的主机HBA驱动安装

9 将CDROM中的内核头文件和源文件进行解压:

# cd /mnt/cdrom/RedHat/RPMS

# rpm -iv kernel-headers*.rpm

# rpm -iv kernel-source*.rpm

9 改变目录,进行菜单配置 QLOGIC QLA22OO 使用手冊 33

# cd /usr/src/linux-2.4

# make menuconfig

Main Menu,选择SCSI Support,按回车ENTER

SCSI Support Menu,选择SCSI Generic Support,按空格键两次

退出Main Menu.

系统会提示:Do you wish to save your new kernel configuration?

选择Yes,系统会在当前目录保存新的配置文件

# make dep

9 创建一个新目录并将驱动程序进行解压

# mkdir qla2x00

# cd qla2x00

# mcopy a:*.tgz . (最后的“.”不要遗漏)

# tar -xvzf *.tgz

9 创建驱动模块

# make all OSVER=;linux-2.4

B) 多处理器的主机HBA驱动安装

9 将CDROM中的内核头文件和源文件进行解压:

# cd /mnt/cdrom/RedHat/RPMS

# rpm -iv kernel-headers*.rpm

# rpm -iv kernel-source*.rpm

9 改变目录,进行菜单配置

# cd /usr/src/linux-2.4

# make menuconfig

Main Menu,选择SCSI Support,按回车ENTER

SCSI Support Menu,选择SCSI Generic Support,按空格键两次

Main Menu,选择Processor type and features,按回车ENTER

选择Symmetric multiprocessor,按空格键SPACEBAR

退出Processor type and features

退出Main Menu.

系统会提示:Do you wish to save your new kernel configuration?

选择Yes,系统会在当前目录保存新的配置文件

# make dep

9 创建一个新目录并将驱动程序进行解压

# mkdir qla2x00

# cd qla2x00

# mcopy a:*.tgz . (最后的“.”不要遗漏)

# tar -xvzf *.tgz 34 QLOGIC QLA22OO 使用手冊

9 创建驱动模块

# make all SMP=1 OSVER=linux-2.4

C) 最后,加载驱动模块

# insmod qla2200.o

D) 设置参数,支持多个LUNs有以下几种方法:

9 系统启动时,根据boot提示,键入

boot: linux max_scsi_luns=128

9 如果SCSI Mid-Layer被编译成模块,则在/etc/modules.conf文件中添加下面的参数: option scsi_mod max_scsi_luns=128

9 如果SCSI Mid-Layer没有被编译成模块的,

对于LILO引导的可以在l/etc/lilo.conf文件中添加:append="max_scsi_luns=128" 并

#lilo

#reboot

对于GRUB,可以在/etc/grub.conf文件中添加:

kernel /vmlinux-2.4.7-10 ro root=/dev/hda2 max_scsi_luns=128

然后reboot系统。

9 或者用下面的命令:

#vi /proc/scsi/scsi

#echo‘scsi add-single-device 3 0 0 1’->/proc/scsi/scsi

其中“3 0 0 1”中,3是SCSI_ID,中间的两个0分别表示Target和

Channel,最后的数字1表示LUN号,有几个LUN就写几遍echo命令,具体参见vi命令显示出来的ID号,这样就可以看见全部的逻辑磁盘。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值