Chinaunix

标题: PXE initrd.img(ct53)中添加igb的driver [打印本页]

作者: James_Guan    时间: 2010-01-20 16:12
标题: PXE initrd.img(ct53)中添加igb的driver
  新买的Cisco C200机器网卡是 Intel Corporation 82576NS Gigabit Network Connection, CentOS 5.3并不支持,于是打算将其驱动加入到initrd.img,并从网络启动。

1. 下载该网卡的驱动 igb-2.0.6.tgz,并在CentOS5.3上编译。产生驱动程序igb.ko
2. 从光盘images/pxeboot中得到initrd.img, 该文件是cpio-initrd,可用cpio解压出来。
# mv initrd.img initrd.img.gz
# gunzip initrd.img.gz
# mkdir initrd
# cd initrd
# cpio -idv

3. 修改modules.cgz
   modules.cgz是一个gzip-cpio文件。目录结构就是/平台/*.ko,在这里,我kernel就是2.6.9-42.EL,平台就是i686(32位系统)和x86_64(64位系统)。
# mkdir /tmp/module
# cd /tmp/module
# zcat /tmp/initrd/modules/modules.cgz|cpio -idv
# cp /tmp/igb.ko 2.6.18-128.el5/i686
# find .|cpio -c -o >../modules
# cd ..
# gzip -9 modules
# mv modules.gz /tmp/initrd/modules/modules.cgz

4. 修改module-info,如果没有igb,则添加
igb
        eth
        "Intel 82575EB/82576NS Gigabit Network/Backplane Connection"

5. 修改modules.dep
该文件用于描述本模块对其他模块的依赖关系。 本例中无需修改。

6. 修改modules.alias,添加
alias pci:v00008086d0000150Asv*sd*bc*sc*i* igb
该号码用lspci -n得到
0b:00.0 0200: 8086:150a (rev 01)
0b:00.1 0200: 8086:150a (rev 01)

7. 修改pci.ids, 添加
150a  82576NS Gigabit Network Connection

8.
# cd /tmp/initrd
# find .|cpio -c -o >../initrd.img
# gzip initrd.img
# cp initrd.img.gz /tftpboot/initrd.img
于是新的initrd.img已包含新的igb driver,可以使用pxe装Cisco C200机器。




本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/13393/showart_2155052.html




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2