Linux下安装无线驱动

      笔记本改造成了Linux服务器,以后就折腾它了。习惯了用wifi的环境,谁还愿意拖跟长长的网线?Linux就不能玩无线了么?当然能哦,下面就来介绍我是怎么给自己的RedHat Linux安装无线驱动滴

Linux环境

红帽企业版6.1     32位操作系统

#getconf    此命令可以用来获取系统相关信息 

想要使用RedHat Linux系统实现无线上网,就要先安装无线网卡驱动,这是在任何一个操作系统中不变的真理。

一  获取相应网卡驱动

#lspci  是一个用来显示系统中所有PCI总线设备或连接到该总线上的所有设备的工具,配合相应参数过滤,我们可以查看到我的笔记本网卡类型

Broadcom(博通)无线网卡驱动下载地址:

http://www.broadcom.com/support/802.11

#wget http://http://www.broadcom.com/docs/linux_sta/hybrid-v35-nodebug-pcoem-6_30_223_271.tar.gz

二  编译安装驱动包

首先确认系统是否有编译安装环境gcc和kernel-devel:

#rpm -qa |grep gcc

#rpm-qa |grep kernel-devel

如果没安装,那就老实安装吧,建议使用yum安装,依赖的包较多

#yum install -y gcc kernel-devel

没有yum仓库?RedHat配置本地yum -

三  解压缩网卡驱动hybrid-portsrc_x86_64-v5_100_82_112.tar.gz

然后进入hybrid目录,看到解压后的三个文件lib, Makefile, src

四  编译安装

      这步最关键了,也是最容易出错的一步,输入make,回车看看是否有报错,如果没有,恭喜你,直接跳过这步,到第五部吧,你比我幸运。如果报错了,也恭喜你,和我一样,这样来:

首先清除之前编译的可执行文件及配置文件

#make clean

#make APT=WEXT 

#ls 看到wl.ko,这样就解决了报错问题

五 内核加载相应模块

载入lib80211模块

insmod也是加载模块,此命令需要提供详细路径

insmod 与 modprobe 都是载入 kernel module,不过一般差别于 modprobe 能够处理 module 载入的相依问题。

insmod模块时出现   -1 Unknown symbol in module的错误提示

解决方法运行# dmesg | tail 命令,看输出信息中的Unknown symbol,加载上这些模块就好

dmesg用来显示内核环缓冲区(kernel-ring buffer)内容,内核将各种消息存放在这里。在系统引导时,内核将与硬件和模块初始化相关的信息填到这个缓冲区中。内核环缓冲区中的消息对于诊断系统问题 通常非常有用。在运行dmesg时,它显示大量信息。通常通过less或grep使用管道查看dmesg的输出,这样可以更容易找到待查信息。例如,如果发现硬盘性能低下,可以使用dmesg来检查它们是否运行在DMA模式:$dmesg | grep DMA

输出发现10个模块是没有找到,细细一想,估计是由于模块依赖的其他模块没有加载导致的。

Linux下安装无线驱动_第1张图片

直接用 # modinfo ./wl.ko |grep depend  找模块的依赖,结果如下:

modinfo会显示kernel模块的对象文件,以显示该模块的相关信息

Linux下安装无线驱动_第2张图片

加载缺失的依赖模块cfg80211后在执行insmod没有错误提示,用无线配置工具 #iwconfig 查看此时系统中无线网卡驱动是否已成功安装(这里是eth1)

六 激活无线网卡

#ifconfig eth1 up

剩下的网络配置就不废话了,可爱的无线信号应该能够搜索到了!

你可能感兴趣的:(Linux下安装无线驱动)