今天给自己的笔记本电脑安装了新的Ubuntu 16.04但是安装之后发现wifi无法启用。这里特说明解决过程。

首先,网上的大部分教程是 选择“系统设置”,点击“软件和更新”点击“附加驱动”,这时候系统会自动联网监测本机适用的附加驱动,其中就包括你的无线网卡驱动。

但是按照上述步骤,却并没有看到需要安装驱动的硬件。但是我在网上找到了这样的一篇博客:Ubuntu 16.04下无线网卡无法正常连网

一.分析:

1.使用ifconfig命令发现不会显示无线网卡,说明无线网卡被关闭,笔者输出的信息如下:

linuxidc@linuxidc:~$ ifconfig

eth0 Link encap:以太网 硬件地址 16:03:71:93:64:22
 inet 地址:192.168.100.3 广播:192.168.100.255 掩码:255.255.255.0
 inet6 地址: fe80::1a03:73ff:fe92:632e/64 Scope:Link
 UP BROADCAST RUNNING MULTICAST MTU:1500 跃点数:1
接收数据包:295308 错误:0 丢弃:0 过载:0 帧数:0
发送数据包:208860 错误:1 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:1000
接收字节:394951279 (394.9 MB) 发送字节:19510963 (19.5 MB)

lo Link encap:本地环回
inet 地址:127.0.0.1 掩码:255.0.0.0
 inet6 地址: ::1/128 Scope:Host
 UP LOOPBACK RUNNING MTU:65536 跃点数:1
接收数据包:943526 错误:0 丢弃:0 过载:0 帧数:0
发送数据包:943526 错误:0 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:1
接收字节:464924375 (464.9 MB) 发送字节:464924375 (464.9 MB)

2.使用lshw命令输出信息(只贴出无线网卡相关的信息)如下:

linuxidc@linuxidc:~$ lshw

*-network DISABLED
 description: Wireless interface
 physical id: 2
 logical name: wlan0          1
 serial: 92 :31:e3:4a:75:f2
 capabilities: ethernet physical wireless
 configuration:
broadcast=yes driver=brcmsmac driverversion=4.1.0-78-generic
firmware=102.304 ip=192.168.100.131 link=no multicast=yes wireless=IEEE
802.11bgn

从第2点的"*-network DISABLED"这一行可以明确无线网卡在硬件上被禁止了

3.于是打开硬件开关,但尝试了很多次都没成功,通过rfkill的输出信息来判断:

linuxidc@linuxidc:~$ sudo rfkill list all
[sudo] linuxidc 的密码:
0: phy0: Wireless LAN
 Soft blocked: no
 Hard blocked: yes

从"Hard blocked: yes"这一行可以看出无线网卡在硬件上被block

如果是Soft blocked: yes , 可以通过 Fn+f2(笔记本) 打开

4.通过第3点开始怀疑无线网卡的驱动是否安装正确

二.安装无线网卡驱动:

1.卸载之前安装的无线网卡驱动(如果之前安装了的情况下,否则请无视):

sudo apt-get purge firmware-b43-installer

sudo apt-get purge bcmwl-kernel-source

2.获取无线网卡的PCI.ID (笔者的无线网卡品牌是broadcom,所以指定厂商代号为14e4)

linuxidc@linuxidc$ lspci -nn -d 14e4:
09:00.0 Network controller [0280]: Broadcom Corporation BCM4313 802.11bgn Wireless Network Adapter [14e4:4727] (rev 01)

从以上信息中获取到关键信息为:[14e4:4727] (rev 01)

-nn 选项是只显示指定的厂商代码对应的设备

-d 选项是显示厂商代号和设备代号,同时显示数字和名称

3.更新ubuntu的PCI.IDs列表:

3.1sudo apt-get update (首先更新软件包索引)

3.2sudo update-pciids (如果一直没有响应,那就将其中断),直接替换原来的/usr/share/misc/pci.ids文件,命令如下:

  cd /usr/share/misc/

  sudo mv pci.ids pci.ids.orig

   然后从http://pci-ids.ucw.cz/下载最新的pic.ids文件

  将下载好的pci.ids文件复制到/usr/share/misc/目录下(由于笔者认为目前的无线网卡硬件不是很新,因此无线网卡的信息在原来的pci.ids文件中是存在的,因此并没有手动去更新pci.ids文件)

4.安装对应的无线网卡驱动,从下表即可获得对应驱动的软件包名
PCI.ID              16.04 LTS                        17.10+
------------------------------------------------------------------------------------
14e4:0576          Special Case #1                  UNKNOWN     
14e4:4301          firmware-b43-installer            firmware-b43-installer     
14e4:4306          firmware-b43-installer            firmware-b43-installer     
14e4:4306 rev 02    firmware-b43-installer            firmware-b43-installer     
14e4:4306 rev 03    firmware-b43-installer            firmware-b43-installer     
14e4:4307          firmware-b43-installer            firmware-b43-installer     
14e4:4311          firmware-b43-installer            firmware-b43-installer     
14e4:4311 rev 01    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 rev 01    firmware-b43-installer            firmware-b43-installer
14e4:4318          firmware-b43-installer            firmware-b43-installer               
14e4:4318 rev 02    firmware-b43-installer            firmware-b43-installer               
14e4:4319          firmware-b43-installer            firmware-b43-installer             
14e4:4320 rev 02    firmware-b43-installer            firmware-b43-installer             
14e4:4320 rev 03    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: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:4353          Special Case #1                  UNKNOWN       
14e4:4353 rev 01    Special Case #1                  UNKNOWN               
14e4:4357          Special Case #1                  UNKNOWN       
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 rev 01    bcmwl-kernel-source              bcmwl-kernel-source     
14e4:43a0          bcmwl-kernel-source              bcmwl-kernel-source
14e4:43ae rev 02    UNKNOWN                          UNKNOWN   
14e4:43b1          bcmwl-kernel-source              bcmwl-kernel-source       
14e4:43b1 rev 03    bcmwl-kernel-source              bcmwl-kernel-source             
14e4:43c3 rev 04    UNKNOWN                          Special Case #2                   
14e4:4727          bcmwl-kernel-source              bcmwl-kernel-source       
14e4:4727 rev 01    bcmwl-kernel-source              bcmwl-kernel-source       
14e4:a962          firmware-b43-installer            firmware-b43-installer     
------------------------------------------------------------------------------------
4.1从上表中可以看到bcmwl-kernel-source与14e4:4727 rev 01对应,因此安装命令如下:
sudo apt-get install bcmwl-kernel-source
4.2重新启动

个人觉得是上述红色的字体是主要的。

sudo apt-get update

sudo update-pciids

上述两步完成后,再进行选择“系统设置”,点击“软件和更新”点击“附加驱动”,这时候系统会自动联网监测本机适用的附加驱动,其中就包括你的无线网卡驱动。

就可以看到需要安装驱动的硬件了,点击安装即可。

Ubuntu系统下电脑驱动的安装(wifi无线网卡)的更多相关文章

  1. ubuntu系统下Python虚拟环境的安装和使用

    ubuntu系统下Python虚拟环境的安装和使用        前言:进行python项目开发的时候,由于不同的项目需要使用不同的资源包和相关的配置,因此创建多个python虚拟环境,在虚拟环境下开 ...

  2. Ubuntu系统下完全卸载和安装Mysql

    删除 mysql sudo apt-get autoremove --purge mysql-server-5.0 sudo apt-get remove mysql-server sudo apt- ...

  3. Tex_安装_在Ubuntu系统下

    $\LaTeX$是一个强大的排版软件,在数学公式.表格.甚至是科学绘图方面有着独特优势.本文在Ubuntu系统下,整理Tex安装相关的操作,以为备忘.所引链接都未同作者商量,如有不妥望及时告知. 命令 ...

  4. Ubuntu系统下OpenDaylight源码编译安装

    操作系统:Linux x64 / Ubuntu 14.04 研究领域:软件定义网络SDN (Software-defined Networking) 开发组件:OpenDaylight 声明:转载请注 ...

  5. linux 系统下IntelliJ IDEA的安装及使用

    由于刚刚进入研究生阶段,通过几个月对大数据的学习,从java到hadoop,再到scala到spark.在这我写一下我在ubuntu系统下intelliJ IDEA的安装和配置.首先我的ubuntu系 ...

  6. Ubuntu系统---安NVIDIA 驱动后 CUDA+cuDNN 安装

    Ubuntu系统---安NVIDIA 驱动后  CUDA+cuDNN 安装 --------------------------------------------@20190726--------- ...

  7. CentOS和Ubuntu系统下安装 HttpFS (助推Hue部署搭建)

    不多说,直接上干货! 我的集群机器情况是 bigdatamaster(192.168.80.10).bigdataslave1(192.168.80.11)和bigdataslave2(192.168 ...

  8. Ubuntu系统下安装并配置hive-2.1.0

    说在前面的话 默认情况下,Hive元数据保存在内嵌的Derby数据库中,只能允许一个会话连接,只适合简单的测试.实际生产环境中不使用,为了支持多用户会话, 则需要一个独立的元数据库,使用MySQL作为 ...

  9. ubuntu系统下安装pyspider:搭建pyspider服务器新手教程

    首先感谢“巧克力味腺嘌呤”的博客和Debian 8.1 安装配置 pyspider 爬虫,本人根据他们的教程在ubuntu系统中进行了实际操作,发现有一些不同,也出现了很多错误,因此做此教程,为新手服 ...

随机推荐

  1. 使用Git,10件你可能需要“反悔”的事

    DevUI是一支兼具设计视角和工程视角的团队,服务于华为云DevCloud平台和华为内部数个中后台系统,服务于设计师和前端工程师.官方网站:devui.designNg组件库:ng-devui(欢迎S ...

  2. 【手把手学习flutter】Flutter打Android包的基本配置和包体积优化策略

    [手把手学习flutter]Flutter打Android包的基本配置和包体积优化策略 关注「松宝写代码」,回复"加群" 加入我们一起学习,天天向上 前言 因为最近参加2020FE ...

  3. PyQt(Python+Qt)学习随笔:Qt Designer中部件的 baseSize和sizeIncrement

    1.baseSize 部件的 baseSize是部件的基础大小(单位:像素),如果部件设定了sizeIncrement,该属性用于在调整部件尺寸时计算部件应该调整到的合适值,但这个属性缺省值是QSiz ...

  4. PyQt学习遇到的问题:重写notify发送的消息为什么首先给了一个QWindow对象?

    在PyQt开发图形界面应用时,从QApplication派生的子类重写notify方法后(具体请参考<PyQt学习随笔:通过自定义类重写QApplication的notify方法捕获应用的所有消 ...

  5. 【Azure Redis 缓存 Azure Cache For Redis】Azure Redis由低级别(C)升级到高级别(P)的步骤和注意事项, 及对用户现有应用的潜在影响,是否需要停机时间窗口,以及这个时间窗口需要多少的预估问题

    问题描述 由于Azure Redis的性能在不同级别表现不同,当需要升级/缩放Redis的时候,从使用者的角度,需要知道有那些步骤? 注意事项? 潜在影响?停机事件窗口? 升级预估时间? 解决方案 从 ...

  6. 手机APP测试(测试点、测试流程、功能测试)

    1.功能测试 1.1 启动 APP安装完成后,是否可以正常打开,稳定运行 APP的速度是可以让人接受,切换是否流畅 网络异常时,应用是否会崩溃:在请求超时的情况下,如果程序逻辑处理的不好,就有可能发生 ...

  7. flask中migrate和scipt进行连用

    近期态度消极了,并且还忙着学php,所以可能flask框架的进度不会像之前那么快了.但是还是要保证跟之前高的质量滴.

  8. 半夜删你代码队 Day3冲刺

    一.每日站立式会议 1.站立式会议 成员 昨日完成工作 今日计划工作 遇到的困难 陈惠霖 了解相关网页设计 了解相关网页设计 无 侯晓龙 写了第一个例子 尝试写第一个实例子 无 周楚池 学习 与余金龙 ...

  9. 百度前端技术学院-基础-day22-24

    第二十二天到第二十四天:JavaScript里面的居民们 task1 题目: <div> <label>Number A:<input id="radio-a& ...

  10. CF1000F One Occurrence

    本题解用于记录一下一个优秀的东西--懒标记. 题解 可以很轻易的想到莫队的做法,但是题目让你输出的是满足条件的一个数,而不是满足条件的数的个数,似乎很难去 \(O(1)\) 转移.这个时候我们的懒标记 ...