CentOS 5.5安装Atheros AR8132网卡驱动

        因工作需要,在电脑中安装CentOS,采用双系统模式。安装CentOS 5.5后,发现看不到网卡启动的迹象,用"ifconfig" 查看,发现没有物理网卡显示,用 "dmesg | grep eth0" 做进一步确认,发现eth0的信息依旧为空。判断原因是缺少网卡驱动导致,这从安装过程中也能观察到,如果系统支持当前网卡,会在安装时提示IP配置,不支持当前网卡,安装时不会有配置网卡的步骤。后来尝试通过"System" -> "Administration" -> "Network" 来新建一个网卡设备,但是依旧失败,这样就确定了只能通过安装Atheros AR8132的驱动来解决问题了。

解决方法

准备工作

        因为安装电脑的U口不可用,为了方便将安装文件导入Linux,我先将文件存在Windows分区下,希望通过挂载分区的方法拷贝文件。不过希望落空了,CentOS 5.5安装的默认内核是2.6.18-194.el5,不支持ntfs的文件系统的挂载,这能用别的方法了。后来试了几个在Windows下识别Ext3文件系统的软件,但是能够成功写的不多,最后找到一款合适的软件"Ext2Fsd", 能成功对Ext3的文件系统读写。这样文件互访就问题了。接下来下载2.6.18-194.el5的源码包,gcc的安装包,Atheros AR8132的驱动源文件。

安装步骤

1. 安装gcc

安装时,采用rpm编译包的方式进行、不用采用源码包安装,因为新系统内没有C的编译器,安装时需要找各种其它资源,如CC Compiler,过程很繁琐,所以直接用rpm安装。在CentOS的系统安装盘的"CentOS"的文件夹中找到以下文件, 并在Linux中安装:

   rpm -ivh cpp-4.1.2-48.el5.i386.rpm 
   rpm -ivh kernel-headers-2.6.18-194.el5.i386.rpm
   rpm -ivh glibc-headers-2.5-49.i386.rpm
   rpm -ivh glibc-devel-2.5-49.i386.rpm
   rpm -ivh libgomp-4.4.0-6.el5.i386.rpm
   rpm -ivh gcc-4.1.2-48.el5.i386.rpm
顺便也可以安装g++:
   rpm -ivh libstdc++-devel-4.1.2-48.el5.i386.rpm
   rpm -ihv gcc-c++-4.1.2-48.el5.i386.rpm


2. 安装Kernel Source Code

设备驱动安装需要有内核源码包,但不要下载整个源码包,到安装盘中拷贝安装"kernel-headers", "Kernel-devel"的rpm包即可。需要注意的是源码内核版本必须与当前系统内核版本一致,可以用"uname -r"查看当前CentOS的内核版本。

   rpm -ivh kernel-2.6.18-194.el5.i686.rpm
   rpm -ihv kernel-devel-2.6.18-194.el5.i686.rpm

说明一下,安装盘中的源码编译包是i686的,没有找到i386的。


3. Atheros AR8132驱动安装

首先下载"AR81Family-linux-v1.0.0.10.tar.gz", 解压后安装"Readme" 中的提示步骤安装。
我操作的时候,遇到一个报错:

kcompat.h: 1561: error: redefinition of 'stuct napi_struct'
提示数据结构"napi_struct"重复定义,Google一下后,找到解决办法,将重复定义部分进行注释即可。

用编辑器打开"kcompat.h",找到1561的位置,注释掉如下的预编译代码:

#if ( LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24) )

/* NAPI API changes in 2.6.24 break everything */
struct napi_struct {
    /* used to look up the real NAPI polling routine */
    int (*poll)(struct napi_struct *, int);
    int weight;
};

还有对应的"endif"部分:

endif /* < 2.6.24 */

清除一切的编译记录,再次make,就发现正常编译通过了。
最后进入目录:/lib/modules/<KERNEL VERSION>/kernel/drivers/net/arl1e
安装模块:
insmod arl1e.o

4. 配置网卡
此时,用"ifconfig" 命令就可以查看到eth0了,网卡以及被系统识别。
在目录 /etc/sysconfig/network-scripts/ 中配置, ifcfg-eth0 的ip和网关。
在 /etc/resolv.conf 中配置域名。
重启网络服务

service network restart

自此,安装过程结束。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值