Ubuntu离线安装Broadcom无线网卡驱动,就这么简单!
在上个教程中,介绍了如何在MacBook上安装Ubuntu,如果按照教程操作的话,你可能会发现——无法连接WIFI!
这是为什么呢?
默认情况下,老款的Mac型号的Broadcom Wi-Fi芯片在Ubuntu中缺少相应的网卡驱动。Ubuntu官方文档也有说明,建议使用sudo apt-get并添加相应PPA安装驱动。
但是!
在没有网的情况下,是不能轻易使用apt-get的!
因此本文就来介绍一下如何在mac电脑上离线安装Ubuntu无线驱动。
不同Mac电脑自带的Broadcom WIFI型号不一样,有两种驱动解决方案:
firmware-b43-installer和bcmwl-kernel-source
需要确定对应的型号PCI ID来安装相应的驱动文件。
下面是不同型号对应的解决方法表:
PCI.ID | 16.04 LTS | 17.10+ |
14e4:1713 | firmware-b43-installer | firmware-b43-installer |
14e4:4301 | firmware-b43-installer | firmware-b43-installer |
14e4:4306 | firmware-b43-installer | firmware-b43-installer |
14e4:4306 | firmware-b43-installer | firmware-b43-installer |
14e4:4306 | firmware-b43-installer | firmware-b43-installer |
14e4:4307 | firmware-b43-installer | firmware-b43-installer |
14e4:4311 | firmware-b43-installer | firmware-b43-installer |
14e4:4311 | firmware-b43-installer | firmware-b43-installer |
14e4:4312 | firmware-b43-installer | firmware-b43-installer |
14e4:4313 | firmware-b43-installer | firmware-b43-installer |
14e4:4315 | firmware-b43-installer | firmware-b43-installer |
14e4:4315 | firmware-b43-installer | firmware-b43-installer |
14e4:4318 | firmware-b43-installer | firmware-b43-installer |
14e4:4318 | firmware-b43-installer | firmware-b43-installer |
14e4:4319 | firmware-b43-installer | firmware-b43-installer |
14e4:4320 | firmware-b43-installer | firmware-b43-installer |
14e4:4320 | firmware-b43-installer | firmware-b43-installer |
14e4:4321 | firmware-b43-installer | firmware-b43-installer |
14e4:4324 | firmware-b43-installer | firmware-b43-installer |
14e4:4325 | firmware-b43-installer | firmware-b43-installer |
14e4:4328 | firmware-b43-installer | firmware-b43-installer |
14e4:4328 | bcmwl-kernel-source | bcmwl-kernel-source |
14e4:4329 | bcmwl-kernel-source | bcmwl-kernel-source |
14e4:432a | bcmwl-kernel-source | bcmwl-kernel-source |
14e4:432b | bcmwl-kernel-source | bcmwl-kernel-source |
14e4:432c | bcmwl-kernel-source | bcmwl-kernel-source |
14e4:432d | bcmwl-kernel-source | bcmwl-kernel-source |
14e4:4331 | firmware-b43-installer | firmware-b43-installer |
14e4:4335 | firmware-b43-installer | firmware-b43-installer |
14e4:4350 | firmware-b43-installer | firmware-b43-installer |
14e4:4358 | bcmwl-kernel-source | bcmwl-kernel-source |
14e4:4359 | bcmwl-kernel-source | bcmwl-kernel-source |
14e4:4360 | bcmwl-kernel-source | bcmwl-kernel-source |
14e4:4365 | bcmwl-kernel-source | bcmwl-kernel-source |
14e4:4365 | bcmwl-kernel-source | bcmwl-kernel-source |
14e4:43a0 | bcmwl-kernel-source | bcmwl-kernel-source |
14e4:43b1 | bcmwl-kernel-source | bcmwl-kernel-source |
14e4:43b1 | bcmwl-kernel-source | bcmwl-kernel-source |
14e4:4727 | bcmwl-kernel-source | bcmwl-kernel-source |
14e4:a962 | firmware-b43-installer | firmware-b43-installer |
通过 CTRL+ALT+T 打开终端:
cat /etc/debian_version
lspci -vvnn | grep -A 9 Network
通过运行上面的命令,我们可以看到:
第一个命令显示的是ubuntu版本对应的debian版本 buster,如果是安装firmware-b43-installer,会用到。
第二个命令可以看到BCM4360, Network Adapter [14e4:43a0] (rev 03)这样的字样,
可以得出小编的电脑使用的是Broadcom BCM4360这款型号的WIFI芯片,PCIID是14e4:43a0(rev 03)
所以小编的macbookAir就可以使用bcmwl-kernel-source
由于没有了网络,不能直接通过apt安装,那么就需要借助mac系统,或者其他电脑来下载需要的文件。
在https://packages.ubuntu.com/ 网页中,搜索关键词bcmwl-kernel-source,
如果你安装的Ubuntu并不是最新的eoan(19.10),那么需要在Dsitribution下拉选项框中选择Any。点击“搜索”按钮开始查找。
在结果中,我们看到了不同Ubuntu版本对应的bcmwl-kernel-source。
点击eoan(19.10)超链接,跳转到相应的下载页面。
在对应Ubuntu版本下载页面,我们还需要注意,软件需要的“依赖”包,以及具体硬件架构。
在使用apt安装软件时,依赖通常可以自动解决。由于目前我们的mac是无法上网的,因此依赖包可能也是需要下载的,小编的电脑缺少dkms,该依赖也需要下载。另外两个系统已经安装,所以不需要。
选择好框架后,64位选择amd64, 32位选择i386,就可以跳转到实际的下载页面,选择一个离你位置最近的镜像区域(亚洲)即可。
下载好deb文件后,将其复制到U盘中,就可以重启进入Ubuntu开始安装了。
在终端中,通过cd命令跳转到U盘目录:
cd /media/bruce/Ubuntu\ 19.1/
输入dpkg命令安装deb包:
sudo dpkg -i dkms_2.6.1-4ubuntu1.4ubuntu1_all.deb && sudo dpkg -i bcmwl-kernel-source_6.30.223.271+bdcom-0ubuntu5_amd54.deb
deb包的名称根据你下载的具体文件名来定,也可以使用
dpkg -i *.deb来安装目录下所有deb文件。
重启后,你就可以看到WIFI可以正常识别并连接了。
sudo reboot
对于不能使用bcmwl-kernel-source驱动网卡的型号,可以试试firmware-b43-installer
具体哪些型号可以,请参看上面提到的表格。
在安装firmware-b43-installer之前,需要确保bcmwl-kernel-source要卸载,输入下方命令:
sudo apt-get purge bcmwl-kernel-source
接下来就开始下载相应firmware-b43-installer离线安装包。
1. 下载b43-fwcutter ,需要将下方的buster替换成具体的debian版本(在Ubuntu终端,通过cat /etc/debian_version 获取,下同)
https://packages.debian.org/buster/b43-fwcutter
2. 下载firmware-b43-installer
https://packages.debian.org/buster/firmware-b43-installer
3. 下载webfs
https://packages.debian.org/buster/webfs
4. 下载二进制文件
http://www.lwfinger.com/b43-firmware/broadcom-wl-5.100.138.tar.bz2
将上述下载的文件保存到U盘,重启进入Ubuntu系统,可以复制到桌面。
5. 输入下方命令,将www.lwfinger.com重定向到本机:
echo '127.0.0.1 www.lwfinger.com' | sudo tee --append /etc/hosts
6. 安装webfs,将webfs.deb替换为你下载的具体名字:
sudo dpkg -i ~/Desktop/webfs.deb
7. 运行命令,创建web服务器环境:
sudo mkdir -p /var/www/b43-firmware
sudo mv ~/Desktop/broadcom-wl-5.100.138.tar.bz2 /var/www/b43-firmware/
sudo sed -i -e 's/web_root="\/var\/www\/html"/web_root="\/var\/www"/' /etc/webfsd.conf
sudo sed -i -e 's/web_port=""/web_port="80"/' /etc/webfsd.conf
8. 运行Web服务器:
sudo /etc/init.d/webfs restart
9. 安装b43-fwcutter:
sudo dpkg -i ~/Desktop/b43-fwcutter.deb
10. 安装firmware-b43-installer:
sudo dpkg -i ~/Desktop/firmware-b43-installer.deb
11. 输入下方命令,在内核模块中屏蔽ndiswrapper:
echo 'blacklist ndiswrapper' | sudo tee --append /etc/modprobe.d/blacklist.conf
12. pm-utils电源管理中配置安装的b43模块:
echo 'SUSPEND_MODULES="b43 bcma"' | sudo tee ---append /etc/pm/config.d/modules
13. 重启电脑查看是否生效:
sudo reboot
14. 关闭并删除临时创建 的web服务器:
sudo apt-get remove -y webfs && sudo rm -rf /var/www/b43-firmware/
以上便是Ubuntu中离线安装Broadcom无线网卡的离线安装方式,不仅适合macBook电脑安装的Ubuntu,也适合其他PC安装Ubuntu却缺少Broadcom无线网卡的情况。