Chinaunix首页 | 论坛 | 博客
  • 博客访问: 481726
  • 博文数量: 67
  • 博客积分: 2952
  • 博客等级: 少校
  • 技术积分: 679
  • 用 户 组: 普通用户
  • 注册时间: 2006-01-24 10:50
文章分类

全部博文(67)

文章存档

2011年(9)

2010年(36)

2009年(8)

2008年(5)

2007年(5)

2006年(4)

我的朋友

分类: LINUX

2010-01-20 16:11:17

  新买的Dell R410机器网卡是 Broadcom Corporation NetXtreme II BCM5716 Gigabit Ethernet, CentOS 4.4并不支持,于是打算将其驱动加入到initrd.img,并从网络启动。
 
1. 下载改网卡的驱动,并在CentOS4.4上编译。产生驱动程序bnx2.ko

2. 从光盘images/pxeboot中得到initrd.img, 该文件是image-initrd,可以采用mount的形式挂载。
# mv initrd.img initrd.img.gz
# gunzip initrd.img.gz
# mkdir initrd
# mount -o loop initrd.img initrd
 
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/bnx2.ko 2.6.9-42.EL/i686
# find .|cpio -c -o >../modules
# cd ..
# gzip -9 modules
# mv modules.gz /tmp/initrd/modules/modules.cgz
 
4. 修改module-info,如果没有bnx2,则添加
bnx2
        eth
        "Broadcom NetXtreme II Gigabit Ethernet adapter"

5. 修改modules.dep

该文件用于描述本模块对其他模块的依赖关系。 本例中无需修改。
 
6. 修改pcitable,添加
0x14e4 0x163b "bnx2" "Broadcom Corporation NetXtreme II BCM5716 Gigabit Ethernet
 
7.
# cd /tmp
# umount initrd
# gzip initrd.img
# cp initrd.img.gz /tftpboot/initrd.img
于是新的initrd.img已包含新的bnx2 driver,可以之际用pxe装R410机器。

 
阅读(1589) | 评论(0) | 转发(0) |
0

上一篇:chroot in kspost

下一篇:linux下制作driver disk

给主人留下些什么吧!~~