fedora16 成功解决无线驱动问题
最近把自己的fedora15升级到了fedora16,发现无线网卡驱动又不能用了,提示固件缺失,没办法,既然选择了fedora,就得有颗爱折腾的心啊。
遇到这样的问题,第一想法就是求助与万能的搜索引擎了。以下是自己整理的关于无线网卡驱动缺失的解决办法。
1.首先查看自己的无线网卡类型,打开终端输入指令:
lsmod|grep 'Network'
结果:04:00.0 Network controller: Broadcom Corporation BCM4312 802.11b/g LP-PHY (rev 01)
找到相应版本之后,直接进相关的官网查询,我的是BCM4312 802.11b/g,所以直接在
http://www.broadcom.com/support/802.11/linux_sta.php下载驱动。最好把README.txt也下载下来。
2.由于我们要自己编译驱动程序,所以就得有相关的编译环境,核相关的库,那个gcc之类的,你懂的,都是必须的。这里成功的关键是kernel-devel,这东西一定要有,yum install kernel-devel即可。
3.解压下载得来的文件
mkdir hybrid/ tar -zxvf hybrid-portsrc_x86_32-v5_100_82_112.tar.gz -C hybrid/
4.进入hybrid,编译文件
make clean make
5.经过上一步,你应该得到了一个wl.ko文件,这就是我们需要的驱动模块。然后将这个模块拷贝到相应的目录中,直接运行这条命令。
cp wl.ko /lib/modules/`uname -r`/kernel/drivers/net/wireless
6.检测是否有以下模块ssb bcma wl b43,有之,移除!并加入黑名单,防止其加载。
# rmmod b43
# rmmod ssb # rmmod bcma # rmmod wl # echo "blacklist ssb" >> /etc/modprobe.d/blacklist.conf # echo "blacklist bcma" >> /etc/modprobe.d/blacklist.conf # echo "blacklist b43" >> /etc/modprobe.d/blacklist.conf
7.检测模块儿依赖,键入命令
depmod -a
8.根据上面检测的依赖关系,加载模块
modeprobe wl
9.如果一切顺利,那么你的无线已经可以使用了。
10.设置开机自动加载模块
echo modeprobe wl >> /etc/rc.local
涉及命令介绍:
1.mkdir 创建目录
2.make / make clean 执行Makefile文件。
3.tar zxvf 压缩包 -C 目标目录 ,解压文件压缩文件到目标目录
4.cp 复制命令
5.uname -r 检测当前内核版本。
6.rmmod 移除模块
7.depmod -a 验证模块依赖,提供给modprobe使用
8.modprobe 自动处理可载入模块
9.echo "blacklist ssb" >> /etc/modprobe.d/blacklist.conf 将字符串“backlist ssb”写入blacklist.conf文件中。 >> 在此处为重定向
常见问题:
1.make时出现make: *** /lib/modules/"release"/build: No such file or directory. Stop.
解决办法:安装kernel-devel。
2.modprobe 找不到模块
解决办法:先执行depmod -a,再试试。