RedHat AS 5.0 安装网卡驱动程序步骤

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

RedHat AS 5.0 Enterprise Server安装网卡驱动程序步骤
1 确认系统的内核版本
[root@localhost ~]# uname -r
2.6.18-8.el5PAE
我的内核版本是2.6.18-8.el5PAE
2 确认系统是否已经安装下列包
由于编译需要用到内核的源代码包和编译程序gcc.所以如果没有的话,要先装。

使用Kernel-devel-XXX.rpm的安装包来创建驱动程序需要的内核文件。

(Kelnel-devel-XXX.rpm是Redhat AS 5提供的一个内核开发包)用rpm -ivh --force kernel-devel-xxxx.rpm把包重新安装一下;
查看:
检查是否已经安装内核源码
[root@localhost ~]# rpm -qa|grep kernel
kernel-doc-2.6.18-8.el5
kernel-xen-2.6.18-8.el5
kernel-2.6.18-8.el5
kernel-PAE-2.6.18-8.el5
kernel-headers-2.6.18-8.el5
kernel-PAE-devel-2.6.18-8.el5
kernel-devel-2.6.18-8.el5
检查是否已经安装编译用到的gcc
[root@localhost ~]# rpm -qa|grep gcc
gcc-gfortran-4.1.1-52.el5
gcc-java-4.1.1-52.el5
libgcc-4.1.1-52.el5
gcc-c++-4.1.1-52.el5
compat-gcc-34-c++-3.4.6-4
compat-gcc-34-3.4.6-4
gcc-4.1.1-52.el5
compat-gcc-34-g77-3.4.6-4
compat-libgcc-296-2.96-138
一般情况下如果安装了内核源码的话源码目录一般都在/usr/src/rRedHat目录下
如果没有的话就用安装盘里面的文件进行安装
3 驱动程序编译及安装
通过官方网站获取相应的驱动程序,我用的是Intel的e1000e的网卡驱动程序
相应的驱动程序包为e1000e-0.5.8.2.tar.gz将驱动程序包拷贝到/usr/src目录下解压缩
cd /usr/src
tar zxvf e1000e-0.5.8.2.tar.gz
完毕以后转到cd e1000e-0.5.8.2/src目录下准备编译安装
在src目录下依次执行make (编译驱动程序源码) make install(安装相应的驱动程序)
安装完毕以后将驱动程序生成的e1000e.o拷贝到/lib/modules/2.6.18-8.el5PAE/kernel/drives/net目录下
cp e1000e.o /lib/modules/2.6.18-8.el5PAE/kernel/drivers/net
然后执行depmod -a加载驱动程序
4 驱动程序测试
我们可以通过modprobe e1000e进行加载如果没有提示错误信息证明驱动程序已经加载
同时可以通过lsmod查看已经加载的驱动程序
如果在显示的驱动程序中能够看到e1000e的字样说明驱动程序已经加载成功
Redhat AS 4 安装Intel千兆网卡驱动
Intel千兆网卡For Linux的驱动文件一般为e1000-X.X.XX.tar.gz (X.X.XX为版本号),这个压缩包里面含有还没有编译好的.o的文件,需要在Linux系统内核源文件才能安装使用。

由于安装Intel千兆网卡需要内核源文件,所以在安装网卡驱动之前要把内核源文件安装好。

一、Redhat AS 4 内核文件安装
Redhat AS 4以前的版本是通过kernel-source-XXX.rpm的安装包来创建内核源文件,但是从Redhat AS 4开始不再提供kernel-source-XXX.rpm安装包,下面我就介绍使用Kernel-devel-XXX.rpm的安装包来创建Intel驱动程序需要的内核文件。

(Kelnel-devel-XXX.rpm是Redhat AS 4提供的一个内核开发包)。

1.用rpm –qa|grep kernel-devel查看是否安装了这个包;如果返回结果中有kernel-devel-xxx(其中xxx为当前redhat的内核版本,如rhel4为2.6.9-11EL), 即已经安装。

如无返回结果则需要安装kernel-devel包。

到安装光盘中找到kernel-devdel-xxx.i686.rpm,用下面命令安装此rpm包:
2.如果安装了用rpm -V kernel-devel校验是否有文件丢失,如果没有输出,表示文件完整;
3.如果有丢失用rpm -ivh --force kernel-devel-xxxx.rpm把包重新安装一下;
二、Intel千兆网卡驱动程序安装步骤
1. 把这个e1000-X.X.XX.tar.gz拷贝到用户自己定义的目录中,例如:
/home/username/e1000
2. 用tar命令解这个压缩包:
tar zxf e1000-X.X.XX.tar.gz
3. 切换到驱动的src目录下:
cd e1000-5.2.52/src/
4. 设置KSRC内核变量:
export KSRC=/usr/src/kernel/2.6.9-11EL
#2.6.9-11EL是内核版本号
5. 编译这个驱动模块:
make
然后安装这个模块
make install
这个二进制元将被安装到如下位置:
/lib/modules/[KERNEL_VERSION]/kernel/drivers/net/e1000.o
6. 安装模块:
insmod e1000
7. 安装完模块使用ifconfig命令查看网卡:
ifconfig -a (就能看到eth0的网卡了)
ifconfig ethx x是网卡接口的号(配置IP地址)
以D-Link530的网卡进行模块的编译.
由于Linux的默认内核已经建立很多网卡驱动程序模块,所以在编译网卡模块之前就要确认网卡芯片是否被支持,如果被支持,就不需要编译模块.
D-Link530的网卡的芯片组是有名的via-rhine(有时也写成viarhine),先找找有没有这块网卡的模块,如果有,你的网卡已经被支持,可以跳过编译过程,直接进行模块的加载.
1.先查看内核版本,因为不同版本的模块放置的路径不同
uname -r
2.内核模块的路径
cd /lib/modules/`uname -r`/kennel/drivers/net
以上为2.4版的路径
cd /lib/modules/`uname -r`/net
以上为2.2版的路径
3.查询模块
ls -l via*
如果自己不知道网卡被Linux检测到,可以用以下方法来测试:
dmesg | grep eth
如果检测到,就不需要编译内核模块.万一检测不到,就必须进行编译工作了.
1.下载网卡驱动程序模块.
2.确定存在所需要的包:由于驱动程序需要配合内核来编译,就会用到kernel source或kernel header的数据,此外也需要编译器的帮助,先确定Linux中是否已经存在下面的包(以Red Hat 9为例):
kernel-source-2.4.20-18.9
kernel-2.4.20-18.9
gcc-3.2.2-5
make-3.79.1-17
如果没有以上的包,就要拿出光盘,将他们安装到Linux中.
注意:由于很多内核模块默认都是由/usr/src/linux这个kernel source的目录来取得所需信息,但偏偏目前很多的Linux都是使用/usr/src/linux-2.4这个目录来链接,所以很多时候就会发现找不到文件的错误信息. 因此,可以使用下面的方式来链接目录:
cd /usr/src
ln -s linux-2.4.20-18.9 linux
3.编译下载的模块
下载完整的驱动程序源代码,如文件名为:dlkfet-4.24.tar.gz
1.将取得的文件放置到/tmp下,并解压文件
cp dlkfet-4.24.tar.gz /tmp
cd tmp
tar -zxvf dlkfet-4.24.tar.gz
cd dlkfet-4.24
2.开始编译make
会产生一个文件模块:rhinefet.o,将它移动到模块放置的目录后,执行depmod -a即可.
cp rhinefet.o /lib/modules/`uname -r`/kennel/drivers/net
depmod -a
4.模块测试
内核模块编译完成后,就要测试能否正常运行,因为我们已经运行depmod -a,所以直接以modprobe进行模块的加载.
1.加载模块测试
modprobe rhinefet.o
注意,不要写完整的名称,.o不需要写.rhinefet就是刚刚编译出来的rhinefet.o.
lsmod
2.设置开机加载摸块
就是编辑/etc/modules.conf
vi /etc/modules.conf
在文件中加入下面一行:
alias eth0 rhinefet
3.重新启动,看是否正常启动模块
sync;sync;reboot上面我们使用的是rhinefet模块,如果不是这个名称,就请依你的实际情况来修改.接下来就是测试这个网卡是否正常工作.。

相关文档
最新文档