我使用的是 Ubuntu Budgie 18.04。我已经使用它一年了,没有任何问题,但突然 wifi 停止工作,并且在网络设置中,我收到消息“未找到 Wifi 适配器”。
命令的结果iwconfig
是
enp59s0 no wireless extensions.
lo no wireless extensions.
命令的结果lspci
告诉我,我有一个网络控制器:Intel Corporation Wireless-AC 9560[Jefferson Peak](修订版 10)。
我尝试了一些找到的解决方案,但它不起作用。请帮我!
更新:
ifconfig
输出:
enp59s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.189.125.212 netmask 255.255.0.0 broadcast 10.189.255.255
inet6 fe80::a47c:fa2:5210:181e prefixlen 64 scopeid 0x20<link>
ether 54:bf:64:37:5d:ac txqueuelen 1000 (Ethernet)
RX packets 126268 bytes 160092432 (160.0 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 47855 bytes 6451226 (6.4 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 17
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 988 bytes 97858 (97.8 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 988 bytes 97858 (97.8 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
iw list
输出:什么都没有lshw -c network
输出:
*-network
description: Network controller
product: Wireless-AC 9560 [Jefferson Peak]
vendor: Intel Corporation
physical id: 14.3
bus info: pci@0000:00:14.3
version: 10
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress msix bus_master cap_list
configuration: driver=iwlwifi latency=0
resources: irq:16 memory:ed31c000-ed31ffff
*-network
description: Ethernet interface
product: Killer E2400 Gigabit Ethernet Controller
vendor: Qualcomm Atheros
physical id: 0
bus info: pci@0000:3b:00.0
logical name: enp59s0
version: 10
serial: 54:bf:64:37:5d:ac
size: 1Gbit/s
capacity: 1Gbit/s
width: 64 bits
clock: 33MHz
capabilities: pm pciexpress msi msix bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
configuration: autonegotiation=on broadcast=yes driver=alx duplex=full ip=10.189.125.212 latency=0 link=yes multicast=yes port=twisted pair speed=1Gbit/s
resources: irq:17 memory:ed200000-ed23ffff ioport:3000(size=128)
lsmod | grep iwlw
输出:
iwlwifi 286720 1 iwlmvm
cfg80211 622592 4 wl,iwlmvm,iwlwifi,mac80211
rfkill list
输出:
0: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
dmesg | grep iwl
输出
[ 3.234002] iwlwifi 0000:00:14.3: enabling device (0000 -> 0002)
[ 3.252973] iwlwifi 0000:00:14.3: loaded firmware version 34.3125811985.0 op_mode iwlmvm
[ 3.314535] iwlwifi 0000:00:14.3: Detected Intel(R) Dual Band Wireless AC 9560, REV=0x318
[ 3.360663] iwlwifi 0000:00:14.3: Microcode SW error detected. Restarting 0x0.
[ 3.360668] iwlwifi 0000:00:14.3: Not valid error log pointer 0x00000000 for Init uCode
[ 3.360825] iwlwifi 0000:00:14.3: SecBoot CPU1 Status: 0x3, CPU2 Status: 0x2459
[ 3.360827] iwlwifi 0000:00:14.3: Failed to start INIT ucode: -5
[ 3.372999] iwlwifi 0000:00:14.3: Failed to run INIT ucode: -5
sudo dmesg | grep iwl
执行后输出sudo rmmod iwlmvm && sudo modprobe iwlmvm
:
[ 3.255919] iwlwifi 0000:00:14.3: enabling device (0000 -> 0002)
[ 3.273432] iwlwifi 0000:00:14.3: loaded firmware version 34.3125811985.0 op_mode iwlmvm
[ 3.340146] iwlwifi 0000:00:14.3: Detected Intel(R) Dual Band Wireless AC 9560, REV=0x318
[ 3.393635] iwlwifi 0000:00:14.3: base HW address: 34:e1:2d:c7:37:15
[ 3.473579] ieee80211 phy0: Selected rate control algorithm 'iwl-mvm-rs'
[ 3.534582] iwlwifi 0000:00:14.3 wlp0s20f3: renamed from wlan0
[ 6.643197] iwlwifi 0000:00:14.3: BIOS contains WGDS but no WRDS
[ 989.877842] iwlwifi 0000:00:14.3: Detected Intel(R) Dual Band Wireless AC 9560, REV=0x318
[ 989.934163] iwlwifi 0000:00:14.3: base HW address: 34:e1:2d:c7:37:15
[ 990.001012] ieee80211 phy1: Selected rate control algorithm 'iwl-mvm-rs'
[ 990.010264] iwlwifi 0000:00:14.3 wlp0s20f3: renamed from wlan0
[ 990.250978] iwlwifi 0000:00:14.3: BIOS contains WGDS but no WRDS
答案1
Failed to start INIT ucode: -5
根据请求,这是解决问题的解决方案
解决方案
首先,在执行任何与 Linux 内核本身相关的步骤之前,请确保在 BIOS 中禁用了 SecureBoot。虽然 SecureBoot 旨在成为一项安全功能,确保所有驱动程序都经过正确签名,但据我所知,这会导致比在 Linux 内核中解决的问题更多的问题,特别是在涉及网络和图形驱动程序时。这通常是解决此问题的关键,并且您的 wifi 驱动程序将在重新启动时正确加载。
一旦进入你的 Linux 发行版(这是一个很好的情况,使用 root 帐户实际上是合适的),首先确定你的内核是否可以看到你的无线控制器。
第一个将告诉您无线卡/控制器是否可以被内核视为设备(即使驱动程序初始化失败)
lshw -c network
虽然这个会告诉您系统是否实际上将其初始化为无线设备。
iw list
现在,在 OP 的情况下,第一个命令确实显示了 Intel AC 9560,而第二个命令的输出为空,告诉我们内核 a) 可以看到该卡,但 b) 无法初始化它。这告诉我们问题很可能与卡的模块/驱动程序有关
为了安全大家都跑
sudo rfkill list
并确保您的 wifi 设备已畅通或只是执行
sudo rfkill unblock all
确保与无线电相关的所有内容均畅通无阻。
如果您在 BIOS 中禁用了 SecureBoot,但由于某种原因,您的 wifi 在重新启动时仍未正确加载,您可以运行:
sudo rmmod iwlmvm && sudo modprobe iwlmvm
内核将重新加载模块并正确初始化它,从那时起它将在每次后续重新启动时工作。为什么它在第一次重新启动时通常不能立即工作对我来说是一个谜,因为据我所知并且被教导,模块在每次启动时都会重新加载。简单地重新启动两次也可能产生与执行上述命令相同的结果。
- 一旦您拥有稳定的互联网连接,请更新您的内核标头和微代码包。
答案2
我有一个完全相同的问题,但没有解决sudo rmmod iwlmvm && sudo modprobe iwlmvm
。热重启也没有用。我必须关闭笔记本电脑,稍等片刻,然后再次打开电源,模块才能再次正确加载。如果可以,请在关闭后取出电池。
答案3
对于那些仍在寻找解决方案的人,我搜索了几天,因此解决方案是将内核更新到 5.10 或 5.12 例如,我在 20.04.2 LTS 上有 5.8 双启动,无线或蓝牙都不起作用,我通过以下方式将内核升级到 5.12https://askubuntu.com/a/1291835/855698现在可以了。
我希望它能帮助那些遇到这个麻烦的人。
答案4
是的,有同样的症状。做了sudo rfkill list
,它说硬件块。打开戴尔前面我以前从未注意到的小开关,问题就解决了!哎呀。 (也可能是这些Fn+类型组合之一F7。)也许您的问题就这么简单。