发布时间:2014-09-05 16:50:38作者:知识屋
出处:LengF's Blog 作者:LengF
0x00 前言
工作需要公司给配置了一个dell studio 1458的笔记本,让人郁闷的dell装不了xp,只好装了win7-32考虑到了软件兼容性。后面又装了ubuntu10.04,郁闷是装上后有线网卡和无线网卡均不能使用,这下蒙了,linux没有网络还能干什么?于是,去官方下载了最新版的ubuntu10.10版本cd版,装完感觉界面改进了不少。进去后发现有线网卡可以使用,无线无法链接。写这篇文章主要记录自己解决问题的办法,同时也希望能够给遇到同样问题的朋友一个帮助。
0x01
接上网线,先更新看看有什么可以更新的驱动“系统”-》“系统管理”-》“附加驱动“,发现了2个驱动,一个是无线驱动(broadcom sta无法激活),另一个是ati的显卡驱动,显卡驱动更新后完美支持,可是无线还是无法更新。
无奈,看了下dell官方驱动下载只提供了win7-64的驱动,于是查看下是什么型号的:
xiaoc@xiaoc-Studio-1458:~$ lspci
找到了:
03:00.0 Ethernet controller: Broadcom Corporation NetLink BCM57780 Gigabit Ethernet PCIe (rev 01)
06:00.0 Network controller: Broadcom Corporation BCM43224 802.11a/b/g/n (rev 01)
第一行是有线网卡,第二后是无线网卡。是Broadcom公司,到broadcom官方下载了。http://www.broadcom.com/support/802.11/linux_sta.php 我下载了32位的(我cpu是64位的)详细看了这个readme.txt,按照说明执行命令如下:
xiaoc@xiaoc-Studio-1458:~$ lspci -n | grep 14e4
03:00.0 0200: 14e4:1692 (rev 01)
06:00.0 0280: 14e4:4353 (rev 01)
pci的id是4353对照readme.txt的列表发现也没有,网络上看了没有这个型号的安装方法。只好自己蛮试试。
首先下载broadcom官方的32位驱动,cd到下载的目录下执行命令如下:
sudo mkdir driver
cd driver/
tar -xzf ../hybrid-portsrc-x86_32-v5.60.48.36.tar.gz
先sudo make clean下,然后make,发现错误如下:
KBUILD_NOPEDANTIC=1 make -C /lib/modules/`uname -r`/build M=`pwd`
make[1]: 正在进入目录`/usr/src/linux-headers-2.6.35-22-generic-pae'
CC [M] /home/xiaoc/下载/driver/src/shared/linux_osl.o
In file included from /home/xiaoc/下载/driver/src/shared/linux_osl.c:19:
/home/xiaoc/下载/driver/src/include/linuxver.h:23: fatal error: linux/autoconf.h: 没有那个文件或目录
compilation terminated.
make[2]: *** [/home/xiaoc/下载/driver/src/shared/linux_osl.o] 错误1
make[1]: *** [_module_/home/xiaoc/下载/driver] 错误2
make[1]:正在离开目录`/usr/src/linux-headers-2.6.35-22-generic-pae'
make: *** [all] 错误2
www.zhishiwu.com
从这个错误发现了2个问题2个地方缺少同一个文件autoconf.h 命令找下这个文件:
sudo find / -mount -name autoconf.h
返回如下:
/usr/src/linux-headers-2.6.35-22-generic-pae/include/generated/autoconf.h
/usr/src/linux-headers-2.6.35-22-generic/include/generated/autoconf.h
然后uname -r查看内核现在是哪个,所以我选择第一个,直接复制到缺少这个文件的目录
cd到driver/src下,在include文件夹下创建一个linux文件夹,并将autoconf.h拷贝到其目录下,同时也拷贝到src/shared/目录下。
ok,再sudo make 发现编译成功了,提示如下:
make[1]: 正在进入目录
/usr/src/linux-headers-2.6.35-22-generic-pae
LD /home/xiaoc/下载/driver/built-in.o
CC [M] /home/xiaoc/下载/driver/src/shared/linux_osl.o
CC [M] /home/xiaoc/下载/driver/src/wl/sys/wl_linux.o
CC [M] /home/xiaoc/下载/driver/src/wl/sys/wl_iw.o
LD [M] /home/xiaoc/下载/driver/wl.o
Building modules, stage 2.
MODPOST 1 modules #看到这个就知道编译完成了。
WARNING: modpost: missing MODULE_LICENSE() in /home/xiaoc/下载/driver/wl.o
see include/linux/module.h for more information
CC /home/xiaoc/下载/driver/wl.mod.o
LD [M] /home/xiaoc/下载/driver/wl.ko
make[1]:正在离开目录`/usr/src/linux-headers-2.6.35-22-generic-pae'
[c/ode]
模块生成了,不过还有一个错误。先不管,将按照官方readme说明文件要将其拷贝到/lib/modules/2.6.35-22-generic-pae/kernel/net/wireless/,执行命令:
[code]sudo cp wl.ko /lib/modules/2.6.35-22-generic-pae/kernel/net/wireless/
然后继续执行命令depmod
手动加载驱动试试效果modprobe wl
到这里发现已经又无线网卡,并且能够搜索到其他无线网络。可是疑问又来了。获取到的ip不对,所以上不了网。
查看下模块是否加载,执行:
[code]xiaoc@xiaoc-Studio-1458:~$ lsmod | grep "wl"
wl 1959533 0
lib80211 5058 2 wl,lib80211_crypt_tkip
发现正常加载了,但是纳闷的是,还是不能上网。出去吃饭回来,将路由的加密模式修改了一下,由原来的WEP128位改成了WAP后链接发现正常了。ok解决了~文章到此结束,我的网络ID:LengF,网络地址:www.81sec.com ,不对的还望指出。
提供编译好的模块:点击这里下载文件
Generated by Bo-blog 2.1.1 Release
linux一键安装web环境全攻略 在linux系统中怎么一键安装web环境方法
Linux网络基本网络配置方法介绍 如何配置Linux系统的网络方法
Linux下DNS服务器搭建详解 Linux下搭建DNS服务器和配置文件
对Linux进行详细的性能监控的方法 Linux 系统性能监控命令详解
linux系统root密码忘了怎么办 linux忘记root密码后找回密码的方法
Linux基本命令有哪些 Linux系统常用操作命令有哪些
Linux必学的网络操作命令 linux网络操作相关命令汇总
linux系统从入侵到提权的详细过程 linux入侵提权服务器方法技巧
linux系统怎么用命令切换用户登录 Linux切换用户的命令是什么
在linux中添加普通新用户登录 如何在Linux中添加一个新的用户
2012-07-10
CentOS 6.3安装(详细图解教程)
Linux怎么查看网卡驱动?Linux下查看网卡的驱动程序
centos修改主机名命令
Ubuntu或UbuntuKyKin14.04Unity桌面风格与Gnome桌面风格的切换
FEDORA 17中设置TIGERVNC远程访问
StartOS 5.0相关介绍,新型的Linux系统!
解决vSphere Client登录linux版vCenter失败
LINUX最新提权 Exploits Linux Kernel <= 2.6.37
nginx在网站中的7层转发功能