解决Debian 9 iwlwifi固件缺失导致无法连接无线网络的问题
本文由荒原之梦原创,原文链接:http://zhaokaifeng.com/?p=692
前言:
本文介绍了解决Debian9安装完成后无法连接wifi的问题以及一些扩展知识。
问题描述:
安装Debian9的时候就提示缺少iwlwifi固件,但是我当时连接的是有线网络,因此跳过去该问题并没有影响我安装Debian。不过,以这种方式安装完成的Debian只能使用有线网络连接互联网,无法使用无线网络。当插入一个USB无线网卡时,我们会在网络连接页面看到“固件缺失”的提示:
图 1
操作环境:
系统:
Linux zd 4.9.0-6-amd64 #1 SMP Debian 4.9.82-1+deb9u3 (2018-03-02) x86_64 GNU/Linux
网络:
有线网络(用于下载安装包)和无线网络(用于验证问题是否解决)
解决过程:
1.连接上有线网络并切换到root用户。
2.备份一下Debian9的软件源配置文件:
cd /etc/apt/
cp sources.list sources.list.bak
2.打开Debian9的软件源配置文件:
leafpad /etc/apt/sources.list
注:用leafpad打开方面复制,Debian9默认没有安装leafpad.
3.将non-free添加到每个源的后面:
修改好之后是这样的:
#
# deb cdrom:[Debian GNU/Linux 9.4.0 _Stretch_ - Official amd64 DVD Binary-1 20180310-11:21]/ stretch contrib main
#deb cdrom:[Debian GNU/Linux 9.4.0 _Stretch_ - Official amd64 DVD Binary-1 20180310-11:21]/ stretch contrib main
deb http://mirrors.tuna.tsinghua.edu.cn/debian/ stretch main non-free
deb-src http://mirrors.tuna.tsinghua.edu.cn/debian/ stretch main non-free
deb <http://security.debian.org/debian-security stretch/updates> main contrib non-free
deb-src <http://security.debian.org/debian-security stretch/updates> main contrib non-free
# stretch-updates, previously known as 'volatile'
deb http://mirrors.tuna.tsinghua.edu.cn/debian/ stretch-updates main contrib non-free
deb-src http://mirrors.tuna.tsinghua.edu.cn/debian/ stretch-updates main contrib non-free
更新系统:
apt-get update
安装firmware-iwlwifi包:
apt-get install firmware-iwlwifi
iwlwifi模块可以被自动加载,当iwlwifi被自动加载时我们需要重新插入该模块以访问固件。
设置iwlwifi自动重新加载:
modprobe -r iwlwifi ; modprobe iwlwifi
之后我们就可以看到wifi连接的选项了:
图 2
扩展知识:
Debian是一个开源操作系统。因此,在安装Debian的时候,默认只安装自由软件,而非自由软件(non-free)则不会被默认安装。在Debian官方的wiki(https://wiki.debian.org/WiFi)中有关于wifi固件以及非开源的wifi驱动程序的说明,在这篇关于wifi的wiki里,有这样的描述:
”Currently there are only a few modern wifi chipsets readily available that work with free software systems. For USB wifi devices this list includes the Realtek RTL8187B chipset (802.11G) and the Atheros AR9170 chipset (802.11N). For Mini PCIe all cards with an Atheros chipset are supported.”.
翻译成中文就是:
“目前只有少数几个现代的WiFi芯片组可以与自由软件系统一起工作。对于USB WiFi设备,该列表包括RealTek RTL8187B芯片组(802.11g)和ActhOS AR9170芯片组(802.11n)。对于小型PCIe,所有具有AcICOS芯片组的卡都得到支持。”
也就是说并不是所有计算机中的wifi固件都支持自由软件,因此Debian9默认并没有启用对wifi的支持。但是 802.11n是支持自由软件的,所以我们需要安装iwlwifi Linux kernel driver(iwlwifi内核驱动程序)来启用对Intel 802.11n devices(Intel 802.11n设备)的支持。
参考资料:
1.Debian Wiki: WiFi:https://wiki.debian.org/WiFi
2.Debian Wiki: iwlwifi:https://wiki.debian.org/iwlwifi
3.iwlwifi - WikiDevi:https://wikidevi.com/wiki/Iwlwifi
4.802.11n_百度百科:https://baike.baidu.com/item/802.11n
解决Debian 9 iwlwifi固件缺失导致无法连接无线网络的问题的更多相关文章
- Android Studio 解决ADB检测不到手机导致无法连接的问题
ADB的全称是Android Debug Bridge,是用来管理模拟器和真机的通用调试工具. 开USB调试 方法:手机设置 - 开发人员选项 - USB调试 - 勾选(开发者调试被隐藏了,在关于手机 ...
- Centos无法连接无线网络解决办法
系统->管理->服务器设置->服务,将NetworkManager选项勾选,点击重启服务.然后就可以看到右上角已经有了网络连接.
- 【Debian学徒记事】记一次解决Debian开机1min30s
记一次解决Debian开机1min30s 打开我亲爱的Debian 欸,好像有点慢 [* * * * ] A start job is running for....(*/1min30s) [TIME ...
- 解决ie6不支持position: fixed;导致无法滚动的办法
<div id="im" style="top: 100px; position: fixed; left: 5px; border: 3px solid #006 ...
- 解决点击cell执行动画导致的重用问题
解决点击cell执行动画导致的重用问题 说明: 动画的细节都是裸露的,并没有封装,靠看官来优化了. 效果: 源码: https://github.com/YouXianMing/UITableView ...
- event.preventDefault() 解决按钮多次点击 导致页面变大
event.preventDefault() 解决按钮多次点击 导致页面变大
- 解决debian 9 重启nameserver失效问题
目录 解决debian 9 重启nameserver失效问题 安装resolvconf 编辑文件 测试 解决debian 9 重启nameserver失效问题 刚安装完debian9,用过之后会发现/ ...
- (转)https://wiki.debian.org/iwlwifi debian7下wifi intel 5100agn
https://wiki.debian.org/iwlwifi Debian 7 "Wheezy" Add a "non-free" component to ...
- SELinux导致PHP连接MySQL异常Can't connect to MySQL server的解决方法
原文摘自:http://www.jb51.net/article/52581.htm 这篇文章主要介绍了SELinux导致PHP连接MySQL异常Can't connect to MySQL serv ...
随机推荐
- 百度地图android studio导入开发插件
百度地图SDK v3.5.0开发包下载地址:http://lbsyun.baidu.com/sdk/download?selected=location 开发工具 Android开发工具很多,在这我们 ...
- Java开发机器上的配置及zookeeper配置
Java开发机器上的配置及zookeeper配置 /etc/profile 文件的后面加入下面的内容: # jdk, zookeeper, kafka, ant, maven export APACH ...
- SharePoint 门户网站的图片轮播-页面定制
这个想法是自己突然的一个想法,想想我们经常用SharePoint做门户网站,不知道你们多数项目都是怎么完成的,我们客户要求的效果都还是很严格的,所有展现起来,还是很漂亮的,但是很多时候的效果,还是难以 ...
- linux内核中访问共享资源
访问共享资源的代码区域称为临界区,临时以某种互斥机制加以保护.中断屏蔽.原子操作 自旋锁和信号量是Linux设备驱动中可采用的互斥途径. 在单CPU范围内避免竞态的一种简单方法是在进入临界区之前屏蔽系 ...
- warning: implicit declaration of function 'getMyfilename' [-Wimplicit-function-declaration]|
我在main后面定义了getMyfilename()函数,然后就报出这个warning. 在main前声明一下就好了.
- nasm中的表达式
nasm表达式支持2个特殊的记号 $和$$;前者标识其所在源码行的开始处地址,所以你可以这样写死循环: jmp $ 而后者标识当前段开始处的地址,你可以通过: $-$$ 找出当前代码在段内的偏移. n ...
- Mac OS X下让ruby支持tcl/tk
我记得在老早在OS X10.8下使用ruby1.9.x的时候只要到下载安装ActiveTcl8.5,没怎么配置就运行tk好好的.但是近日想重新执行下tk代码,发现在require 'tk'的时候就报错 ...
- ionic3-ng4学习见闻--(轮播图完美方案)
ionic上 轮播图是最坑的插件了吧,各种bug和 问题. 事件也不好用.. 于是,我终于搞出来了一个完美的方案, 适用于,动态获取轮播图数据,自动循环播放,跳转其他页面回来后自动播放,手指触摸后自动 ...
- Day8 接口与归一化设计
接口:在程序的使用中,我不能把程序的主体直接提供给使用者,一般是提供一个接口. 为什么要使用接口: 1,接口提取了一群共同的函数,可以把接口当做一个函数的集合. 2,让子类去实现接口中的函数. 归一化 ...
- js 逻辑运算符优化
运算符的代码优化,可以精简代码,提高代码可读性 下面主要讨论下逻辑运算符与 &&, 或||. 示例: 假设对成长速度显示规定如下: 成长速度为5显示1个箭头: 成长速度为10显示2个箭 ...