历尽曲折,集成网卡驱动终于安装成功了,在这里把安装方法和遇到问题的解决方法跟大家共享一下。

linux系统在安装成功后,用ifconfig命令没有显示出集成网卡(我的机器装了两个网卡,一个集成的,一个独立的),只显示了eth1。

利用命令lspci查看目前主机上的硬件配备

Host bridge: <==主板芯片

VGA compatible controller <==显卡

Audio device <==音频设备

PCI bridge <==接口插槽

USB Controller <==USB控制器

ISA bridge

IDE interface

SMBus

Ethernet controller <==网卡

查看到网卡信息为

02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 02)

03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)

集成网卡的型号为RTL8111/8168B PCI Express Gigabit Ethernet controller,这就是我们接下来要安装驱动的网卡。上官网上下载驱动,网址为:

http://www.realtek.com.tw/downloads/downloadsView.aspx? Langid=1&PNid=13&PFid=5&Level=5&Conn=4&DownTypeID=3&GetDown=false#2

下载r8168-8.037.00.tar.bz2包到/tmp目录下,cd到/tmp目录,执行tar -jxvf r8168-8.037.00.tar.bz2命令,解压。

-> cd r8168-8.009.00

-> make clean modules

到这之后按照我查的资料应该顺利进行下去,结果发生错误

make -C src/ clean
make[1]: Entering directory `/root/r1000_v1.05/src'
rm -rf *.o *.ko *~ core* .dep* .*.d .*.cmd *.mod.c *.a *.s .*.flags .tmp_versions
make[1]: Leaving directory `/root/r1000_v1.05/src'
make -C src/ modules
make[1]: Entering directory `/root/r1000_v1.05/src'
make -C /lib/modules/2.6.18-1.2798.fc6xen/build SUBDIRS=/root/r1000_v1.05/src modules
make: Entering an unknown directory
make: *** /lib/modules/2.6.18-1.2798.fc6xen/build: 没有那个文件或目录。 停止。
make: Leaving an unknown directory
make[1]: *** [modules] 错误 2
make[1]: Leaving directory `/root/r1000_v1.05/src'
make: *** [modules] 错误 2

使用 rpm -qa | grep kernel命令,查看安装了那些kernel包,需要安装kernel-xen-devel、kernel-headers、kernel-develkernel-xen

安装完之后还是提示上面那个错误,我查看bulid目录,发现文件名为红色闪烁的文件,说明链接文件损坏,ls -l查看链接的是那个目录为build -> ../../../usr/src/kernels/2.6.18-1.2798.fc6-xen-i686

删除build文件,重新创建链接文件

-> make clean modules 运行正常

-> make install

-> depmod -a

-> insmod ./src/r8168.ko

出错,提示:insmod: error inserting '/tmp/r8168-8.037.00/src/r8168.ko': -1 Invalid module format

纠察原因是因为少装了kernel-PAEkernel-PAE-devel

安装这两个包,重启系统,从make clean modules重新执行一遍

-> ifconfig -a

发现多了个网卡信息eth1

[root@localhost r8168-8.037.00]# ifconfig -a

eth0 Link encap:Ethernet HWaddr A0:00:00:05:D5:F4

inet addr:124.133.15.194 Bcast:124.133.15.199 Mask:255.255.255.248

inet6 addr: fe80::a200:ff:fe05:d5f4/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:881 errors:0 dropped:0 overruns:0 frame:0

TX packets:525 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:84349 (82.3 KiB) TX bytes:62851 (61.3 KiB)

Interrupt:233 Base address:0x8000


eth1 Link encap:Ethernet HWaddr 6C:F0:49:46:AA:85

BROADCAST MULTICAST MTU:1500 Metric:1

RX packets:0 errors:0 dropped:0 overruns:0 frame:0

TX packets:0 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

Interrupt:50 Base address:0x4000

-> ifconfig eth1 up

网卡驱动安装成功