Debian 11 无法识别 WiFi 适配器

Lin*_*ert 1 wifi drivers debian firmware

我已在 Dell Precision M6600 笔记本电脑上安装了 Debian 11。我安装的 ISO 不包含非免费固件。我的目标是只安装使我的 WiFi 适配器运行所需的固件和驱动程序,而不是安装包含大量非免费固件的非官方 ISO。

首先,我确认 iflwifi 内核驱动程序支持我的 WiFi 适配器。根据此 wiki,支持我的 Intel Centrino Ultimate-N 6300。

我还按照iwlwifi 页面上“安装”下的说明执行步骤 1 和 2 ,并将“contrib non-free”标签添加到 /etc/apt/sources.list。我的sources.list 文件现在看起来像这样:

# See https://wiki.debian.org/SourcesList for more information.
deb http://deb.debian.org/debian bullseye main contrib non-free
deb-src http://deb.debian.org/debian bullseye main contrib non-free

deb http://deb.debian.org/debian bullseye-updates main contrib non-free
deb-src http://deb.debian.org/debian bullseye-updates main contrib non-free

deb http://security.debian.org/debian-security/ bullseye-security main contrib non-free
deb-src http://security.debian.org/debian-security/ bullseye-security main contrib non-free
Run Code Online (Sandbox Code Playgroud)

然而,我无法简单地使用 apt 安装 iwlwifi,因为该机器当时实际上没有互联网连接。相反,我下载了 .deb 文件并使用dpkg -I. 我在这里获得了 .deb 文件。

现在,我正在查看包含的驱动程序列表,但它并没有像整个 iwlwifi 页面所说的那样明确包含 Centrino Ultimate-N 6300。所以也许这就是问题所在。

第三步令人困惑。它说运行这个命令:

modprobe -r iwlwifi ; modprobe iwlwifi
Run Code Online (Sandbox Code Playgroud)

我可以运行 ; 剩下的所有内容 我没有收到任何错误,但也没有输出。如果我按照所写的方式运行命令,我会得到

bash: modprobe: command not found
Run Code Online (Sandbox Code Playgroud)

多次重新启动后,WiFi 适配器仍然无法识别。当我单击任务栏中的图标时,我希望看到的是可用 wifi 网络的列表。我在安装了各种发行版(包括 Mint 20、最新的 Ubuntu,以及包含非自由固件的非官方 Debian 11 ISO)后看到了该列表。我尝试了后者作为测试,看看 Debian 11 是否能够识别这个 wifi 卡,它确实可以。

但目前,单击任务栏中的图标仅列出有线连接并显示其已拔出,这是正确的。没有显示 wifi 网络。

我可能最终会重新安装非官方 ISO 并继续使用它,但与其他发行版相比,Debian 吸引我的地方之一是 FOSS 的严格性。不一定是因为我个人觉得有必要那么严格,而是因为全新安装后系统的臃肿程度减少了。我喜欢只拥有硬件所需的驱动器和固件,而不是拥有一大堆不存在的东西。

我缺少哪个步骤才能让我的 WiFi 适配器在 Debian 11 中运行?

小智 5

如果您只需要软件包固件-iwlwifi;你需要一个可以连接互联网的系统(Linux 就可以了)。

wget -c http://ftp.us.debian.org/debian/pool/non-free/f/firmware-nonfree/firmware-iwlwifi_20210315-3_all.deb
Run Code Online (Sandbox Code Playgroud)

将其保存在 USB 记忆棒(或类似的东西)上 直接使用 dpkg 安装软件包。

sudo dpkg -i /full/path/to firmware-iwlwifi_20210315-3_all.deb
Run Code Online (Sandbox Code Playgroud)
    sudo modprobe -rv iwlwifi
Run Code Online (Sandbox Code Playgroud)

然后您可以再次加载该模块。

sudo modprobe -v iwlwifi
Run Code Online (Sandbox Code Playgroud)