今天给自己的笔记本电脑安装了新的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. 网络最大流 Dinic算法

    前言 看到网上好多都用的链式前向星,就我在用 \(vector\) 邻接表-- 定义 先来介绍一些相关的定义.(个人理解) 网络 一个网络是一张带权的有向图 \(G=(V,E)\) ,其中每任意一条边 ...

  2. 第7.18节 案例详解:Python类中装饰器@staticmethod定义的静态方法

    第7.18节 案例详解:Python类中装饰器@staticmethod定义的静态方法 上节介绍了Python中类的静态方法,本节将结合案例详细说明相关内容. 一.    案例说明 本节定义了类Sta ...

  3. 第九章 Python文件操作

    前一阵子写类相关的内容,把老猿写得心都累了,本来准备继续介绍一些类相关的知识的,如闭包.装饰器.描述符.枚举类.异常等,现在实在不想继续,以后再开章节吧.本章弄点开胃的小菜提提神,介绍Python中文 ...

  4. FFmpeg在Android Studio中断点调试

    一般情况下在Android平台使用FFmpeg为动态库或静态库的形式,只能通过设置FFmpeg日志回调来看一些FFmpeg输出的日志,有时需要debug来查看FFmpeg内部执行过程,本文记录一下在A ...

  5. CentOS下安装SublimeText

    1.Install the GPG key: sudo rpm -v --import https://download.sublimetext.com/sublimehq-rpm-pub.gpg 2 ...

  6. c++11-17 模板核心知识(十五)—— 解析模板之依赖型类型名称与typename Dependent Names of Types

    模板名称的问题及解决 typename规则 C++20 typename 上篇文章c++11-17 模板核心知识(十四)-- 解析模板之依赖型模板名称 Dependent Names of Templ ...

  7. POJ3565

    题目大意: 给定\(n\)个蚂蚁和\(n\)颗苹果树的坐标,要求每个蚂蚁爬到一颗苹果树旁,使得每个蚂蚁路线不相交且路线总长度最小,求每个蚂蚁爬到哪个苹果树旁? 首先假设有两只蚂蚁路径相交,那么这两个蚂 ...

  8. 题解-Happy New Year

    题解-Happy New Year Happy New Year 给定 \(n\),\(m\) 和 \(k\).有一个序列 \(a\{m\}\) 初始值为 \(0\).有 \(n\) 种操作,每种可以 ...

  9. CC-BY-NC-SA (创作共用许可协议)

    创作共用许可协议 (英语:Creative Commons license,简称CC许可) 是一种公共版权许可协议,其允许分发受版权保护的作品. 一个创作共用许可,用于一个作者想给他人分享.使用.甚至 ...

  10. STL——容器(deque) 元素的存取&迭代器

    1. deque 的数据存取 这个部分和 vector 几乎一样 第一  使用下标操作 dequeName[0] = 100; //小心越界 第二  使用at 方法 如: dequeName.at(2 ...