1、问题描述
登录Ubuntu系统后,在WiFi设置里面,点击开启WiFi,无法开启,而且界面显示“未发现WiFi适配器”。对于大多数用户来说,无法使用WiFi的原因有两个:
(1)无线网卡被hard blocked
(2)无线网卡驱动没有安装好
下面针对这两种情况分别给出详细解决方法。
2、无线网卡被hard blocked
1、Ctrl+AIt+T打开终端,在终端输入命令 rfkill list all,显示的信息如下:
可以看到,优先级最先的ideapad_wlan的Hard blocked 默认为yes,即Ubuntu默认关闭了硬件wifi开关,而联想拯救者Y7000的wifi只有软件开关,没有硬件开关的启动,所以引起了wifi无法开启的问题。
从无线模块的显示列表可以看出,序号2的wifi模块是软硬件都可以启动的,所以,只要将前面默认的模块移出即可。
2、在终端继续输入sudo modprobe -r ideapad_laptop ,然后输入你的登录密码(sudo操作需要你输入登录密码),这样就移除了ideapad无线模块,这时候应该出现WiFi选项了,可以连上无线网了。
3、我们输入rfkill list all看一下现在情况,发现WiFi模块正常工作了:
4、但是每次启动Ubuntu系统都要重新进行模块移出,就很麻烦,所以可以将该命令设置为开机自启动。
首先,切换到root用户,在终端输入:su 进入root用户后,修改文件:sudo gedit /etc/rc.local 注意:Ubuntu18.04 下没有/etc/rc.local这个文件,我们要自行在/etc下创建一个rc.local文件。
5、修改好的文件内容如下,其中你的密码就是你的Ubuntu登录密码:
#!/bin/bash
sudo “你的密码” modprobe -r ideapad_laptop
exit 0
如果你是新建的,全部复制粘贴过去;
如果不是新建的,只要在exit 0前面加上这句就可以:
sudo "你的密码" modprobe -r ideapad_laptop
开机启动后系统会自动执行改脚本文件,完成wifi模块的自动移出操作。
6、如果重启还没有WIFi,还是需要手动输入命令移除,说明rc.local还没有执行权限,这时候我们赋给它执行权限才行。在终端输入以下命令,不需要改动,x就是执行的意思,然后回车即可,这下重启就能自动执行rc.local移除模块了。
chmod +x /etc/rc.local
3、无线网卡驱动没有安装好
如果上面的方法没有用,说明就是这个原因了。这个方法只适用于U盘安装的系统,其他方式安装的请谨慎考虑。
1、首先连上网线,找根网线,一头插你电脑网口,另一端插路由器或者墙上网口,总之要有有线网络环境。
PS:要安装网卡驱动必须有网,但安装了网卡驱动才有网,是不是个死循环,哈哈。
2、插上安装系统用的U盘,点击打开
3、依次进入pool/main/d/dkms 文件夹,可以看到有一个dkms_2.3-3ubuntu9_all.deb文件(每个人的版本号可能不同)。
这是驱动的一个依赖文件,右键选择在这个文件夹下打开终端,运行命令:
sudo dpkg -i dkms_2.3-3ubuntu9_all.deb
4、切换到U盘的pool/restricted/b/bcmwl 路径下
找到 bcmwl-kernel-source_6.30.223.271+bdcom-0ubuntu4_amd64.deb这个文件,这个就是网卡的驱动包,执行命令:
sudo dpkg -i bcmwl-kernel-source_6.30.223.271+bdcom-0ubuntu4_amd64.deb
5、到这里应该就完成了,可以看到有WiFi的图标了,再打开WiFi就行了。
6、在执行以上操作时,运行命令时候可能提示缺少依赖,所以首先要更新下源:
执行命令:sudo apt-get update
然后执行:sudo apt-get upgrade
安装过程中如有提示更新失败之类的信息,是因为依赖问题,按照系统给出的提示执行操作即可,大致也就是:sudo apt-get update --fix-missing
参考资料:https://www.sohu.com/a/303791829_698936