大家好,Superuse 社区,
我在这里重新发布这个问题和解决方案,因为它在 Stack Overflow 中被删除了(我不知道它只是软件)。
我无法将 Dell Latitude 5480 连接到运行 Ubuntu 20.04 LTS 的 WiFi。
我按照 linuxconfig.org 的教程来了解如何启用 WiFi:https://linuxconfig.org/ubuntu-20-04-connect-to-wifi-from-command-line
当我这样做时,ls /sys/class/net
我得到了以下输出enp0s31f6 lo wlp2s0
然后我编辑了以下文件来配置 WiFi:
sudo nano /etc/netplan/00-installer-config.yaml
包含以下内容:
network:
ethernets:
enp0s31f6:
dhcp4: true
dhcp6: true
version: 2
wifis:
wlp2s0:
access-points:
"network-name":
password: "network-password"
dhcp4: true
dhcp6: true
然后我运行以下命令sudo netplan apply
,命令行上没有显示任何错误。
最后,当我运行时,ip a
我得到了以下输出wlp2s0
:
3: wlp2s0: <No-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 20:16:b9:ea:2b:6c brd ff:ff:ff:ff:ff:fff
然后我尝试通过运行来设置链接sudo ip link set dev wlp2s0 up
,运行时得到了相同的输出ip a
。
我确保检查文件上的缩进是否正确,以及网络的 SSID 名称和密码是否正确。
当我运行时,sudo lshw -class network
我得到了 WiFi 卡的以下输出:
*-network
description: Wireless interface
product: Wireless 8265 / 8275
vendor: Intel Corporation
physical id: 0
bus info: pci@0000:02:00.0
logical name: wlp2s0
version: 78
serial: my serial number
width: 64 bits
clock: 33MHz
capabilities: pm pciexpress bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=iwlwifi driverversion=5.4.0-generic firmware=36.77d01142.0 latency=0 link=no multicast=yes wireless=IEEE 802.11
resources: irq:137 memory:ef200000-ef201fff
我无法使用 WiFi,但我可以使用以太网电缆连接到互联网。
提前谢谢你!
更新:
当我重新启动机器时,它会卡在配置网络 2 分钟。
当我运行时,sudo iw dev wlp2s0 scan
网卡会列出网络的 SSID。
重新启动后运行时sudo netplan apply
我得到以下输出:
Warning: The unit file, source configuration file or drop-ins of netplan-wpa-wlp2s0.service changed on disk. Run 'systemctl daemon-reload' to reload units.
Warning: The unit file, source configuration file or drop-ins of netplan-wpa-wlp2s0.service changed on disk. Run 'systemctl daemon-reload' to reload units.
更新 2:
我查看了 systemctl 进程列表,发现netplan-wpa-wlp2s0.service
失败了。
运行时,sudo systemctl status netplan-wpa-wlp2s0.service
我得到失败服务的以下输出:
● netplan-wpa-wlp2s0.service - WPA supplicant for netplan wlp2s0
Loaded: loaded (/run/systemd/system/netplan-wpa-wlp2s0.service; enabled-runtime; vendor preset: enabled)
Active: failed (Result: exit-code) since Tue 2020-08-18 18:12:07 UTC; 4min 50s ago
Process: 616 ExecStart=/sbin/wpa_supplicant -c /run/netplan/wpa-wlp2s0.conf -iwlp2s0 (code=exited, status=203/EXEC)
Main PID: 616 (code=exited, status=203/EXEC)
Aug 18 18:12:07 scrubstation systemd[1]: Started WPA supplicant for netplan wlp2s0.
Aug 18 18:12:07 scrubstation systemd[616]: netplan-wpa-wlp2s0.service: Failed to execute command: No such file or directory
Aug 18 18:12:07 scrubstation systemd[616]: netplan-wpa-wlp2s0.service: Failed at step EXEC spawning /sbin/wpa_supplicant: No such file or directory
Aug 18 18:12:07 scrubstation systemd[1]: netplan-wpa-wlp2s0.service: Main process exited, code=exited, status=203/EXEC
Aug 18 18:12:07 scrubstation systemd[1]: netplan-wpa-wlp2s0.service: Failed with result 'exit-code'.
更新 3:
我尝试sudo /sbin/wpa_supplicant -c /run/netplan/wpa-wlp2s0.conf -iwlp2s0
直接运行,但出现 bash 错误,提示未找到命令:
sudo: /sbin/wpa_supplicant: command not found
我检查了一下/run/netplan/wpa-wlp2s0.conf
,该文件已经正确配置。
然后我安装了 wpa_supplicant 二进制文件sudo apt install wpasupplicant
并重新启动了服务sudo systemctl status netplan-wpa-wlp2s0.service
然后我跑过去ip a
一看,电脑已经连接上WiFi了!!
解决方案:
wpa_supplicant
通过运行以下命令安装缺少的二进制文件:
sudo apt install wpasupplicant
- 运行以下命令来识别您的无线网络接口的名称:
- 我得到了以下输出:
enp0s31f6 lo wlp2s0
- 我得到了以下输出:
ls /sys/class/net
- 编辑以下文件来配置WiFi:
/etc/netplan/
请注意,编辑时只能有一个文件。
sudo nano /etc/netplan/00-installer-config.yaml
- 将 WiFi 信息添加到文件:
network:
ethernets:
enp0s31f6:
optional: true
dhcp4: true
dhcp6: true
version: 2
wifis:
wlp2s0:
optional: true
access-points:
"network-name":
password: "network-password"
dhcp4: true
dhcp6: true
- 通过运行以下命令将更改应用到 netplan:
sudo netplan apply
享受您的WiFi!