关闭

CentOS5.6编译安装无线网卡驱动(用退休的笔记本搭建自己的Linux服务器)

标签: centoslinux服务器makefilegcc编译器
5009人阅读 评论(1) 收藏 举报
分类:

(二,CentOS编译安装无线网卡驱动)

 

目录

1.  U盘安装CentOS5.6

2.  CentOS5.6编译安装无线网卡驱动

3.  CentOS5.6配置无线网卡驱动

4.  花生壳动态域名解析

5.  Linux配置开机启动项

CentOS编译安装无线网卡驱动

         上一篇文章已经介绍了如何安装CentOS5.6了,下面进入第二个环节,安装无线网卡驱动。

         我的本本是神舟F233T的不自带无线网卡。So,我自己弄了个USB的,最常见的一款TL-WN322G+(ver1.0 54M)。安装过程比较复杂,但亲自操作可行,比网上那一大堆垃圾转载的都好些吧。

1.      准备工作

使用上一篇介绍的U盘安装完毕后,系统还是不完整的,要想编译USB无线网卡的驱动程序,必须安装内核源码和gcc工具。

在下述操作之前先切换到root用户

以下涉及到的文件可以使用U盘来移动到linux里面,如何移动呢,需要挂载U盘。

如何查看U盘的驱动器号?如何正确挂载和卸载?df命令,mount命令,unmount命令。

1.1安装内核源码

在iso里找到kernel-headers-2.6.18-238.el5.x86_64.rpm,kernel-devel-2.6.18-238.el5.x86_64.rpm按顺序安装,由此可以知道系统内核版本是2.6.18,如果不信还可以使用uname –r命令查询。

/lib/module/你的centos名称/build文件被指向了一个不存在的文件,删除掉重建ln指向新安装的内核。如果不知道rpm的相关命令或者不知道文件被安装到什么地方了,请查阅我的其他文章。

 

这里说明下,内核一定要使用安装光盘里的,而不要去linux官网下载那个2.6.18的包,由于centos是发型版本,对内核会有改动,版本号会被定义为2.6.18-238.el5而不仅仅是2.6.18,我刚刚开始的时候就是去linux官网下的包,然后makeoldconfig&&make prepare&&make script&&make花了半个小时编译完内核模块,再编译无线网卡驱动程序后想要插入驱动时提示版本不符合,因为你的系统的内核版本是2.6.18-238.el5,而编译时使用的内核是2.6.18,有微小区别,在insmod时进行版本检测无法通过,貌似可以添加-f参数忽略版本检测,但是作为追求完美的人,还是建议不要这样做吧。在说说iso文件里的几个kernel文件,我刚刚开始的时候不懂哪个是真正的内核源码,简单介绍如下kernel -2.6.18-238.el5.x86_64.rpm是经过编译的内核,kernel debug-2.6.18-238.el5.x86_64.rpm是内核源码,不过打开看到里面的makefile文件的头三行你就明白,它的内核版本号会被定义为2.6.18-238debug.el5,所以不要使用这个rpm文件。

 

1.2安装gcc编译器

可以用有线网卡直接yum或者apt-get安装(具体哪个命令我忘记了),如果有线网卡不可用,那没法,之能从iso文件里找,然后用U盘移动给系统了,需要安装的包和顺序如下

rpm -ivh cpp-4.1.2-42.el5.i386.rpm

rpm -ihvkernel-headers-2.6.18-92.el5.i386.rpm

rpm -ivh glibc-headers-2.5-24.i386.rpm

rpm -ivh glibc-devel-2.5-24.i386.rpm

rpm -ivh libgomp-4.5.2-42.el5.i386.rpm

rpm -ivh gcc-4.1.2-42.el5.i386.rpm

 

2.      编译USB无线网卡驱动

下载驱动程序源码(sourceforge网上有的,懒得找链接了,先占个位置)

插入USB无线网卡后使用lsusb命令可以查看到无线网卡核心是zd1211b,所以修改源码配置文件makefile,把xx改成1,然后make能看见编译成功。源码根目录下生成了zd1211b.ko文件,这个既是驱动文件了。modinfozd1211b.ko可以看到内核编译环境的版本是2.6.18-238.el5,与系统内核完全吻合,使用insmod zd1211b.ko把无线网卡驱动程序插入到内核。

 

Ifconfig –a可以看到无线网卡eth1了,使用ifconfig eth1 up启动无线网卡的时候提示。。。失败,原因是缺少usb某种固件firmware,去XXX下载该固件,解压到/lib/firmware/zd1211/下(无需编译了),然后再启动,发现成功了,iwlist eth1 scan发现可以搜索到无线网络了,

据说2.6.2*以上的内核版本会自带zd1211的firmware了,如果真的如此,这一步可以省略

 

时间有限,今天就先写如何安装吧。配置的话也比较复杂,下一篇介绍,相信你也不喜欢看太长的文章。如果你没用成功,核对下自己使用的软硬件版本,可以自己适当的调整下,实在不行可以留言


2
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:403728次
    • 积分:3941
    • 等级:
    • 排名:第8246名
    • 原创:45篇
    • 转载:32篇
    • 译文:0篇
    • 评论:63条
    文章分类
    最新评论