安装 tools
apt-get install ndiswrapper-common ndiswrapper-utils-1.9 ndisgtk
1. 执行 lspci 查看无线网卡的型号
02:02.0 Ethernet controller: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller (rev 03)
注:此芯片 BCM4306 为早期型号,通过安装 Linux 驱动并未激活网卡,再次通过 ndiswrapper 安装并激活
2. 采用 ndiswrapper 安装 Windows inf
在ubuntu里设置broadcom的无线网卡是一件十分棘手的事情,有许多受挫的用户到论坛里寻求建议。
Broadcom没有提供对linux的支持(你尽可以向你的硬件商抱怨或者再花钱买个别的无线网卡)。
但是事实上它们是可以工作,只要你知道怎么设置。
首先,你得找到你需要的帮助文件。Broadcom的无线网卡在很多牌子的电脑上有,尤其是戴尔和宏基的笔记本。
找到配套的驱动程序,(戴尔通常会把它备份在 C:/DRIVERS/NETWORK/ADDON目录下);
如果你找到了一个cdmw15.inf 或是 bcmw15a.inf 的文件,那就可以继续看下去。
如果不依照这些指导你是不会成功的
在你开始前,用ndiswrapper来清除之前的错误尝试所留下来的记录 命令如下
sudo modprobe -r bcmwl5
sudo rmmod ndiswrapper
sudo apt-get remove ndiswrapper-utils
sudo rm -r /etc/ndiswrapper/
sudo rm -r /etc/modprobe.d/ndiswrapper
以上的有些步骤可能会报告错误,不用管它
将bcmw15.inf 和bcmw15.sys两个文件拷贝到你的桌面上
根据以下帮助的提示来获得相关知识
打开一个终端进程并输入如下命令,注意你的网络连接应该是启用了的。
既然我假定你可以接入一个无线网络,你就得真的有可以接入的无线网络哦
命令如下
sudo apt-get install ndiswrapper-utils
sudo ndiswrapper -i ~/Desktop/bcmwl5.inf
sudo ndiswrapper -m
for conffile in /etc/ndiswrapper/bcmwl5/*.conf; do
sudo cat $conffile | sed -e 's/RadioState|1/RadioState|0/' > $conffile
done
重启你的电脑。
在重启的时候你的无线网卡的灯应该是亮的。如果没有,则输入如下命令
sudo modprobe ndiswrapper
安装完以后可以重新启动机器试试看:
iwconfig //输入这个命令,看看有没有一个wlan0的网卡在工作
再输入
iwlist wlan0 scanning
会有如下的信息:
wlan0 Scan completed : Cell 01 - Address: 00:06:25:DE:97:E9 ESSID:"linuxzfp"
Protocol:IEEE 802.11g Mode:Managed Frequency:2.437 GHz (Channel 6)
Quality:81/100 Signal level:-44 dBm Noise level:-96 dBm Encryption key:on
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s 24 Mb/s; 36 Mb/s; 54 Mb/s; 6 Mb/s; 9 Mb/s 12 Mb/s; 48 Mb/s
Extra:bcn_int=100 Extra:atim=0 IE: IEEE 802.11i/WPA2 Version 1 Group Cipher : WEP-40
Pairwise Ciphers (1) : WEP-40 Authentication Suites (1) : PSK IE: WPA Version 1
Group Cipher : WEP-40 Pairwise Ciphers (1) : WEP-40 Authentication Suites (1) : PSK
这就说明你的网卡已能正常工作啦,恭喜你完成了基本的驱动安装!
如何设置你的网卡:
如果是你的路由器设置的是WEP模式(建议使用WPA模式,更安全,否则会有人用你的路由器”蹭网"的。),那你可以通过菜单中的网络设置进行相应的密码认证设置,我的环境是WPA,所以,我就用 ndisgtk 进行设置的。
ifconfig wlan0 会有如下输出:
root@linuxzfp:/home/linuxzfp/.mozilla# ifconfig wlan0wlan0 Link encap:Ethernet HWaddr 00:14:BF:7D:1B:D9 inet addr:192.168.8.241 Bcast:192.168.255.255 Mask:255.255.0.0 inet6 addr: fe80::214:bfff:fe7d:1bd9/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:90 errors:0 dropped:0 overruns:0 frame:0 TX packets:125 errors:0 dropped:2 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:9746 (9.5 KB) TX bytes:20593 (20.1 KB)
说明你已经得到dhcp分配的地址啦,如果没有得到正确的IP地址,你可以试试这个办法:
dhclient3 -r wlan0 //清空或者叫释放ip地址
再
dhclient3 -q wlan0 //重新获得dhcp ip地址
通过 界面 方式启动:
现在你的无线网卡已经启用了。打开你的网络设置工具 -> 系统管理 -> 网络
选择你的无线网卡(可能是wlan0)并点击属性按扭
勾选(此设备已设置),并输入你的网络名和连接设置。如果你不知道,可以询问你的办公室网络管理员,或将你windows中的设置复制过来
小心输入你的WEP码,如果你在使用的话。你应该以十六进制输入,如果你不会转换那么就在你的码前面加上s:
点击确认。窗口应该很快就关闭了,如果卡住了,你可能没有连接好
回到网络设置窗口,选择你的无线网卡为默认的网关设备
再次点击确认,窗口应该就很快关闭了
享受无线的天堂吧,如果一切顺利,你可以把桌面上的两个文件删除了
你可能会发觉信号强度程序有些问题。这是一个已知的bug
如果你有问题,尝试进入你的 windows——如果你有双系统的话——检查你的卡是否被激活。
有的笔记本可以通过特殊的组合键来关闭无线网卡,在linux 里我还没找到一个可靠的办法。
3. 直接安装 Linux 驱动
(1)、通过安装包
From the GUI:
Package Manager (System>Administration>Synaptic Package Manager). Click the
Reload button in the upper left corner of Synaptic to refresh your index then
search for and reinstall the package named bcmwl-kernel-source.
From the shell:
sudo apt-get update
sudo apt-get --reinstall install bcmwl-kernel-source
(2)、通过源码编译并安装
在broadcom的网站上下载linux下的驱动。www.broadcom.com/support/802.11/linux_sta.php。下了32-bit的驱动,再下了一个readme。然后基本上按照这个 readme 来安装驱动。
安装:
# mkdir hybrid_wl
# cd hybrid_wl
# tar xzf <path>/hybrid-portsrc-x86_32-v5.10.91.9.3.tar.gz
我这里输入的是tar xzf ../hybrid-portsrc-x86_32-v5.10.91.9.3.tar.gz 因为我的压缩 包在上一级目录。
# make clean (optional)
# make
下面就是移除原来的驱动
# lsmod | grep "b43/|ssb/|wl"
# rmmod b43
# rmmod ssb
# rmmod wl
# echo "blacklist ssb" >> /etc/modprobe.d/blacklist.conf
# echo "blacklist b43" >> /etc/modprobe.d/blacklist.conf
安装:
# modprobe lib80211
# insmod wl.ko
安装到这里,iwconfig就可以看到有个eth1--就是无线网卡了,但是tx-power 还是off的。为了保险起见,我还加了两句
#modprobe wl---第一次提示没有wl这个模块,后来在系统--管理--硬件驱动里面我把broadcom sta 驱动激活了(原来是没有的,好像insmod wl.ko后就有了),再次运行这个命令就可以了。
#depmod -s
装到这就完了,为了让这模块一开始就可以加载,在/etc/modules里面加上wl就可以了。
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
lp
wl
就是上面这样。在一个wiki上搜到说是在/etc/rc.conf里面加几句话,但是ubuntu没有这个文件。
我原来以为这样就可以了。装完后右上角看无线网络一直是无线网络被禁用,百思不得其解。后来在ubuntu论坛上搜了半天,各种原因,看到眼花缭乱,终于在一个回帖中看到,某人说要fn+f2来启用笔记本的无线网卡才行。
ok。最后的步骤,按下fn+f2.还是不行呢,再重启,进入系统前狂按fn+f2数次,进去后终于ok了。
然后连接无线网络,输入密码,ok拉。