cobbler initrd.img引导镜像中添加HP DL388 Gen8 B320i阵列卡驱动

1、利用cobbler安装HP DL388 Gen8服务器时不能成功,报错提示找不到可用的硬盘,和HP售后沟通了解到HP DL388 Gen8服务器的raid卡的型号是B320i。centos6或7系统的initrd.img中没有B320i阵列卡的驱动,如果想把Gen8装上centos或redhat的系统,需要先在官网下载B320i阵列卡的驱动,CentOS7的下载地址如下: 

阵列卡驱动下载

http://h20564.www2.hp.com/hpsc/swd/public/detail?sp4ts.oid=5293150&swItemId=MTX_9200a10168684afbbb4efce88a&swEnvOid=4176


2、下载完B320i的阵列卡驱动后,需要把阵列卡打包到initrd.img引导镜像中,具体步骤如下:

1)、把iso镜像挂在到一个临时目录

mkdir /mnt/cdrom/CentOS-7-x86_64/

mount -o loop /iso/CentOS-7-x86_64-DVD-1503-01.iso /mnt/cdrom/CentOS-7-x86_64/

2)、因为mount到的临时目录没有写权限所以需要把这些文件复制到另外的目录

[root@localhost ~]# mkdir /mnt/CentOS-7-x86_64

[root@localhost ~]# cd /mnt/CentOS-7-x86_64/

[root@localhost CentOS-7-x86_64]# cp -r /mnt/cdrom/CentOS-7-x86_64/* .

3)、找到initrd.img引导文件所在的目录

/mnt/CentOS-7-x86_64/isolinux/initrd.img

/mnt/CentOS-7-x86_64/images/pxeboot/initrd.img

4)、在/mnt/CentOS-7-x86_64/isolinux/目录创建一个initrd的临时目录

mkdir initrd

3)、复制initrd.img镜像到initrd临时目录内

cp initrd.img initrd

4)、解压initrd临时目录中的initrd.img镜像(用file initrd.img 查看此文件的格式)  

file initrd.img 

initrd.img: xz compressed data

通过查看该文件时XZ格式,用xz 工具解压该文件

xz -dc initrd.img | cpio -id

查看解压完后的目录内容

[root@localhost initrd]# ls

bin  dev  etc  init  lib  lib64  proc  root  run  sbin  shutdown  sys  sysroot  tmp  usr  var

[root@localhost initrd]# 

5)、查看下载的驱动的格式

[root@localhost ~]# file hpvsa-1.2.14-100.rhel7u1.x86_64.dd.gz 

hpvsa-1.2.14-100.rhel7u1.x86_64.dd.gz: Linux rev 1.0 ext2 filesystem data (mounted or unclean) (extents) (64bit) (huge files)

6)、解压上面的驱动文件

mount -o loop hpvsa-1.2.14-100.rhel7u1.x86_64.dd.gz  /bbb

7)、解压kmod-hpvsa-1.2.14-100.rhel7u1.x86_64.rpm文件

rpm2cpio kmod-hpvsa-1.2.14-100.rhel7u1.x86_64.rpm | cpio -div

8)、复制驱动文件到initrd.img解压后的module目录内

cp -r /root/bbb/lib/modules/3.10.0-229.el7.x86_64/extra/ /mnt/CentOS-7-x86_64/isolinux/initrd/usr/lib/modules/3.10.0-229.el7.x86_64/kernel


9)、获得添加模块的模块别名

modinfo -F alias kernel/extra/hpvsa/hpvsa.ko  | sed -e 's/^/alias /' -e 's/$/ hpvsa/' >>modules.alias


10)、回到initrd目录重新压缩initrd目录生成initrd.img文件

find . | cpio -c -o | xz -9 --format=lzma > initrd.img


11)、删除原来的initrd.img引导文件把新的initrd.img文件复制到/mnt/CentOS-7-x86_64/isolinux/和/mnt/CentOS-7-x86_64/images/pxeboot/目录


你可能感兴趣的:(cobbler)