今天给自己的笔记本电脑安装了新的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. fist-第七天冲刺随笔

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzzcxy/2018SE1 这个作业要求在哪里 https://edu.cnblogs.com/campus/fz ...

  2. 使用react终端运行npm start时报错

    npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! my-app@0.1.0 start: `react-scripts start` npm ERR ...

  3. webpack系列:webpack小老弟接了个简单活

    webpack深入浅出系列:进阶篇 前沿,本篇文章的讲解思路是以webpack的五大核心为线索,以webpack对象为第一视角来讲述(以前记得看过一个文笔非常厉害的技术啊婆写的,非常有趣.然后我就想着 ...

  4. 第8.4节 Python类中不是构造方法却胜似构造方法的__new方法__深入剖析:语法释义

    一.    引言 在本博前面的内容都对构造方法__init__进行了介绍,也在前面章节引入了__new__方法,但老猿认为__new__方法比构造方法__init__更应该属于构造方法.这是因为在Py ...

  5. 在Python实现print标准输出sys.stdout、stderr重定向及捕获的简单办法

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 Python中的标准输出和错误输出由sys模块的stdout.stde ...

  6. PyQt(Python+Qt)学习随笔:信号签名中的万能Python类型PyQt_PyObject

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 信号在定义时参数如果使用字符串'PyQt_PyObject'表示参数可以是任何Python类型,这通 ...

  7. B站自动爬取器并制作词云

    效果 词云展示 弹幕展示 爬取弹幕过程 基本步骤 1.寻找视频url 2.构造请求头 3.寻找弹幕地址 4.根据弹幕地址运用正则或xpath爬取 寻找B站视频的url 制作请求头 headers = ...

  8. python 练习洗牌

    生成随机数需要引入random模块,学习下random模块中常用的几个函数: random.random() 用于生成一个0到1的随机符点数: 0 <= n < 1.0 random.un ...

  9. NOI2008 志愿者招聘

    文化课 + 竞赛双废物又来水题解了. 首先,对于题干中的人,很像网络流中的流量,但是他有一个每天人数的下限,我从网上借鉴(chaoxi)到了两种思路: 把下界限制转化为一条边的流量下界,这样就是最小费 ...

  10. Codeforces Edu Round 63 A-E

    A. Reverse a Substring 容易看出,只要符合递增顺序就符合\(NO\),否则则可以找到一组,每次记录最大值比较即可. #include <cstdio> #includ ...