未找到 wifi 适配器

未找到 wifi 适配器

我已经使用oracle 9.2一年了,网络完全没有问题。

昨天系统严重崩溃并自动重启;重新启动时,wifi 适配器就消失了,在设置菜单上,wifi 不再列出。

运行 lspci 时:

[root@192 xxx.yyy] $ lspci | grep Network
00:14.3 Network controller: Intel Corporation Tiger Lake PCH CNVi WiFi (rev 11)

[root@192 xxx.yyy]# rfkill list
0: hci0: Bluetooth
    Soft blocked: no
    Hard blocked: no
[root@192 xxx.yyy]# lshw -c network
  *-network:0 UNCLAIMED     
       description: Network controller
       product: Tiger Lake PCH CNVi WiFi
       vendor: Intel Corporation
       physical id: 14.3
       bus info: pci@0000:00:14.3
       version: 11
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress msix cap_list
       configuration: latency=0
       resources: iomemory:600-5ff memory:6053b9c000-6053b9ffff
  *-network:1
       description: Ethernet interface
       product: Ethernet Connection (14) I219-V
       vendor: Intel Corporation
       physical id: 1f.6
       bus info: pci@0000:00:1f.6
       logical name: enp0s31f6
       version: 11
       serial: 5c:60:ba:48:57:50
       capacity: 1Gbit/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=5.15.0-200.131.27.el9uek.x86_64 firmware=0.4-4 latency=0 link=no multicast=yes port=twisted pair
       resources: irq:170 memory:6ec80000-6ec9ffff
  *-network
       description: Ethernet interface
       product: SAMSUNG_Android
       physical id: 10
       bus info: usb@3:1
       logical name: enp0s20f0u1
       serial: 66:62:d1:cf:f9:16
       capabilities: ethernet physical
       configuration: autonegotiation=off broadcast=yes driver=rndis_host driverversion=5.15.0-200.131.27.el9uek.x86_64 duplex=half firmware=RNDIS device ip=192.168.233.158 link=yes multicast=yes port=twisted pair
[root@192 xxx.yyy]# lspci -knn | grep -A 2 -i net
00:14.3 Network controller [0280]: Intel Corporation Tiger Lake PCH CNVi WiFi [8086:43f0] (rev 11)
    Subsystem: Intel Corporation Wi-Fi 6 AX201 160MHz [8086:0074]
    Kernel modules: iwlwifi
--
00:1f.6 Ethernet controller [0200]: Intel Corporation Ethernet Connection (14) I219-V [8086:15fa] (rev 11)
    Subsystem: Hewlett-Packard Company Device [103c:8870]
    Kernel driver in use: e1000e
[root@192 xxx.yyy]#

问题出在哪里?

我在同一台机器上还有一个 Windows 操作系统,并且运行良好

为什么网络 0 无人认领?它是什么意思?


我在启动日志中发现的错误,我不清楚它们是否相关:

Dec 10 10:57:26 localhost.localdomain NetworkManager[54089]: <info>  [1702202246.7101] NetworkManager (version 1.42.2-8.0.1.el9_2) is starting... (after a restart, boot:9e78d0ab-6976-4743-bfe2-f286efbe4a12)
Dec 10 10:57:26 localhost.localdomain NetworkManager[54089]: <info>  [1702202246.7102] Read config: /etc/NetworkManager/NetworkManager.conf (lib: 00-server.conf, 10-disable-mptcp.conf) (run: 15-carrier-timeout.conf)
Dec 10 10:57:26 localhost.localdomain NetworkManager[54089]: <error> [1702202246.7115] bus-manager: fatal failure to acquire D-Bus service "org.freedesktop.NetworkManager" (3). Service already taken
Dec 10 10:57:26 localhost.localdomain NetworkManager[54089]: <info>  [1702202246.7115] exiting (error)
Dec 10 10:57:46 localhost.localdomain NetworkManager[54103]: <info>  [1702202266.7479] NetworkManager (version 1.42.2-8.0.1.el9_2) is starting... (after a restart, boot:9e78d0ab-6976-4743-bfe2-f286efbe4a12)
Dec 10 10:57:46 localhost.localdomain NetworkManager[54103]: <info>  [1702202266.7480] Read config: /etc/NetworkManager/NetworkManager.conf (lib: 00-server.conf, 10-disable-mptcp.conf) (run: 15-carrier-timeout.conf)
Dec 10 10:57:46 localhost.localdomain NetworkManager[54103]: <error> [1702202266.7487] bus-manager: fatal failure to acquire D-Bus service "org.freedesktop.NetworkManager" (3). Service already taken
Dec 10 10:57:46 localhost.localdomain NetworkManager[54103]: <info>  [1702202266.7488] exiting (error)

[root@192 system-connections]# rpm -Vf /lib/modules/$(uname -r)/kernel/net/wireless/*80211.ko*
.M.......  g /boot/System.map-5.15.0-200.131.27.el9uek.x86_64
.M.......  g /boot/initramfs-5.15.0-200.131.27.el9uek.x86_64.img
.M.......  g /boot/System.map-5.15.0-200.131.27.el9uek.x86_64
.M.......  g /boot/initramfs-5.15.0-200.131.27.el9uek.x86_64.img
[root@192 system-connections]# rpm -Vf /lib/modules/$(uname -r)/kernel/net/mac80211/mac80211.ko*
.M.......  g /boot/System.map-5.15.0-200.131.27.el9uek.x86_64
.M.......  g /boot/initramfs-5.15.0-200.131.27.el9uek.x86_64.img
[root@192 system-connections]#

[root@192 system-connections]# dmesg | grep 0000:00:14.3
[    3.731567] pci 0000:00:14.3: [8086:43f0] type 00 class 0x028000
[    3.731586] pci 0000:00:14.3: reg 0x10: [mem 0x6053b9c000-0x6053b9ffff 64bit]
[    3.731700] pci 0000:00:14.3: PME# supported from D0 D3hot D3cold
[    3.800182] pci 0000:00:14.3: Adding to iommu group 11
     

答案1

UNCLAIMED输出中的lshw意思是“内核未能找到适合该设备的驱动程序,或者加载驱动程序失败”。正如 waltinator 所提到的,可查看的启动日志sudo journalctl -b 0可能有更详细的错误消息。

崩溃后,WiFi 芯片可能处于某种错误状态,而驱动程序不知道如何清除它。在这种情况下,完全关闭系统电源并重新启动通常会有所帮助。但是,如果您重新启动到 Windows,并且 WiFi 芯片可以正常工作,然后再次重新启动到 Linux,并且 WiFi 仍然无法工作,那么这不是一个可以通过重新启动电源来解决的暂时性问题。

由于该设备以前可以工作,并且仍然可以在 Windows 上工作,因此这可能意味着驱动程序或驱动程序所需的固件文件可能会损坏。

Intel AX201 WiFi 芯片的 Linux 驱动程序有几个部分:

  • 内核iwlwifi模块,位于/lib/modules/<kernel version>/kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko
  • 子模块iwlmvm,位于/lib/modules/<kernel version>/kernel/drivers/net/wireless/intel/iwlwifi/mvm/iwlmvm.ko
  • 固件文件,位于/lib/firmware/iwlwifi-Qu-*.ucode(可能有多个可用的固件版本;每个驱动程序通常更喜欢内核发布时可用的最新固件版本,但如果需要,可以回退到较旧的固件版本)

要验证驱动程序文件的运行状况,您可以使用核实命令功能rpm

sudo rpm -Vf /lib/modules/$(uname -r)/kernel/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko*
sudo rpm -Vf /lib/modules/$(uname -r)/kernel/drivers/net/wireless/intel/iwlwifi/mvm/iwlmvm.ko*
sudo rpm -Vf /lib/firmware/iwlwifi-Qu-*.ucode.xz

如果该命令没有输出rpm -Vf,则意味着该文件与从相应 RPM 包安装时的文件完全相同,应该没问题。

错误消息可能意味着文件丢失;由 9 个字母/数字/点组成的字符串,后跟文件路径名,表示文件已被以某种方式修改或损坏。如果您有兴趣,请查看man rpm验证结果中每个字母的确切含义。

如果任一内核模块文件丢失或损坏,您需要为当前内核重新安装相应的内核模块 RPM 文件:

sudo dnf reinstall kernel-modules-$(uname -r)

如果固件文件损坏或丢失,您需要重新安装相应的固件 RPM,iwl7260-firmware在本例中命名为:

sudo dnf reinstall iwl7260-firmware

重新安装损坏的文件后,您可以尝试重新加载驱动程序:

sudo modprobe -r iwlwifi   # unload the driver if it's loaded
sudo modprobe iwlwifi      # reload it

您在启动日志中发现的错误:

bus-manager: fatal failure to acquire D-Bus service "org.freedesktop.NetworkManager" (3). Service already taken

表明 NetworkManager 的一个实例正在尝试启动,而此时似乎已经有另一个 NetworkManager 实例正在运行。也许第一个实例在加载 WiFi 驱动程序模块之前启动,并且在尝试检测 WiFi 卡时以某种方式挂起?

您可能想要验证 NetworkManager 是否未损坏 ( sudo rpm -V NetworkManager),并尝试重新启动它 ( systemctl restart NetworkManager.service)。

如果这有帮助,则可能需要向 NetworkManager 添加自定义依赖项,以防止它在 WiFi 设备完全准备就绪之前启动。

还有一个健全性检查:您的系统是否有“飞行模式”的物理开关,即用于禁用所有无线电发射器?如果您的系统有,请确保它位于已启用位置。

相关内容