嗯,昨天帮一个同事安装了ubuntu 6.06,安装后第一个想要解决的就是无线网卡(芯片:Broadcom 4311)驱动的问题,因为宿舍是无线,如果网络不能通的话,估计他没兴趣用这个东西了,呵呵!
使用lspci输出信息包括如下字样:
Broadcom Corporation Unknown device 4311 (rev 01)Broadcom 4311
后来上网搜索了一下,搜到这篇:
Broadcom BCM4311 802.11g mini-PCIe (14E4:4324) Wireless Adapter using ndiswrapper Installation (Plus NetworkManager and WPA)接着一步一步照着做就好了,其实我也是第一次配置无线网卡这东西,心里也没底,但是有这么详细的教程就万事OK了。我们宿舍的无线网络是验证mac地址、开放式没有加密的,mac地址验证当然是没问题的了,因为他之前用Windows时就已经申请过了,所以要想上网就只要驱动无线网卡,填上SSID即可。
同事的系统是新装的Ubuntu 6.06,在参考上面的操作说明时,有些步骤可以省略,大概过程如下:
Step 1跳过,因为Ubuntu 6.06里面默认并没有安装ndiswrapper,所以不需要做移除的动作;
Step 2跳过,他说的意思是Ubuntu 6.10自带一个名为bcm43xx的驱动,为避免冲突需要停用这个驱动,而我们这个6.06就不需要这一步了;
Step 3,这一步需要照做,因为后面编译安装ndiswrapper需要make等工具,默认新装的6.06里面没有安装相应的包,不过这一步提示你用apt-get,但是我现在网络根本不通如何apt-get?呵呵,不用担心,这些软件包可以直接从安装光盘里面安装的。进入Ubuntu系统后,插入安装光盘,系统会提示你:“检测到Ubuntu安装光盘,问你是否要打开软件包管理器?”你选择是就好了,然后在
Synaptic里面搜索“build-essential
”、“linux-headers
”等,将它们装上就好了。
Step4,这个当然要照做了,如果网络不通那就先通过其它电脑下载好(我下载的时候是1.38版),再通过U盘copy过来,在6.06里插上U盘后自动在桌面生成U盘图标,用完后,右键点击桌面图标选择“Eject”,即插即用自动识别,感觉方便很多了呢!
Step5,照做,解压安装ndiswrapper。接着它提示你下载Windows版的无线网卡驱动,然后使用apt-get安装cabextract这个软件包,以便使用它从exe文件中提取必要的文件(bcmwl5.inf)。可是我们网络不通的啊……,我是从windows系统下面找到那个bcmwl5.inf文件的。因为同事电脑上现在是双系统,所以我就直接在Windows下面的C盘里找到那个bcmwl5.inf文件的。具体位置记不清楚了,大概位于这里:/media/sda1/Program Files/Broadcom/……
知道bcmwl5.inf在哪里后,直接运行:
$ sudo ndiswrapper -i bcmwl5.inf(这里就是你的bcmwl5.inf文件所在的具体位置了)
正如网页上所说如果没有错误提示的话,接着运行:
$
ndiswrapper -l
看到类似这样的信息(我同事的网卡芯片是4311):
installed drivers:
bcmwl5 driver installed, hardware (14E4:4311) present
如果你看到类似上面的输出信息,那么就不用做下面的这步了:
$
ndiswrapper -a 14E4:4311 bcmw15
运行这个:
$ ls /etc/ndiswrapper/bcmwl5
我们可以看到这个bcmwl5支持不止4311这一种,包括:4311、4312、4318、4319、4320、4324。
根据情况选择自己的芯片型号,我这里是4311:
$ sudo cp /etc/ndiswrapper/bcmwl5/14E4:4311.5.conf /etc/ndiswrapper/bcmwl5/.conf
一般下面这个也不用做:
$
gksudo gedit /etc/ndiswrapper/bcmwl5/.conf
(Edit the .conf file and change the ninth line from "Afterburner|1" to
"Afterburner|0". 作者提到:This turns off a Broadcom extention to the 802.11x standards that improves
throughput when you are using all Broadcom devices. It also will not let this
device work with my Linksys Access Point unless it is turned off. Perhaps this
would not be necessary with some Broadcom Access Points? 大概意思是在他的硬件环境下——全部用的是Broadcom的设备,需要做这个更改才能正常连接无线网络。)
我没有做编辑.conf文件这一步,也是一切OK的,所以大家可以先不更改,如果有问题再试着照作者所说将.conf文件中的"Afterburner|1" 改为
"Afterburner|0"试试。
接着照做:
$
sudo depmod -a
$
sudo modprobe ndiswrapper$
iwconfig
到这里,看到wlan0,接着到System-->Administration-->Networking里面设置一下无线AP的SSID,然后就可以测试网络是否正常连接了。
Step 7,测试网络,照做。
Step 8,教你如何控制这个无线网卡,比如停用无线连接(ifdown wlan0),启用无线连接(ifup wlan0),使用 iwlist wlan0 scanning 可以看到附近的无线AP的一些信息。最后提到编辑/etc/modules文件,加上一行:ndiswrapper,以确保系统以后每次重新启动时自动加载ndiswrapper模块。
嗯,我昨天做的过程就是这样了。