如何在 Arch Linux 中连接 Wi-Fi 网络?

如何在 Arch Linux 中连接 Wi-Fi 网络?

tl;dr 阅读 Arch wiki 文章后安装,无线设置WPA请求者,尝试下面的建议和大量论坛主题,我无法得到任何一个启动 Arch Linux 2013-09-01 ISO 时使用以下卡连接到我的无线网络:


方法 1(默认):

执行此操作的默认方法应该是systemctl stop dhcpcd.service其次是wifi-menu。它找到网络:

[SSID] + wpa 10

超时后报告连接失败。如果我运行wifi-menu一个第二有时它不会要求输入密码,但完成后它最终会给出一些调试提示:

Job for netctl@wlp0s29f7u5\x2dBTHub4\x2dGRK6.service failed. See 'systemctl status netctl@wlp0s29f7u5\x2dBTHub4\x2dGRK6.service' and 'journalctl -xn' for details.

前者报告服务已“加载”但未“活动”(字面意思inactive (dead))。后者说:

WPA association/authentication failed for interface 'wlp0s29f7u5'

这是否意味着输入的密钥/etc/netctl/wlp0s29f7u5-BTHub4-GRK6错误?我无法判断程序何时需要实际的Wi-Fi 密码以及何时需要类似值pskwpa_passphrase例如man 5 netctl.profile,没有说明)。


方法2(wpa_supplicantwpa_passphrase根据迪拉夫沃克的建议和维基页面):

# echo 'ctrl_interface=/var/run/wpa_supplicant' > wifi.conf
# wpa_passphrase essid passphrase >> wifi.conf
# wpa_supplicant -B -i interface -c wifi.conf
Successfully initialized wpa_supplicant
# dhcpcd -A interface
[...]
timed out
exited

我尝试直接连接iw,但得到一些奇怪的输出:

# iw dev wlp0s26f7u5 connect [SSID]
command failed: Operation not supported (-95)

答案1

您是否设置了密码wpa_passphrase?例如

%> wpa_passphrase SSID passphrase
network={
        ssid="SSID"
        #psk="passphrase"
        psk=28964ba6ea8b8f3a0db1c4414b327da253d0af5d4f4adccec0f8abf5b05b10f8
}

否则wpa_supplicant -B -i [wireless device] -c /etc/wpa_supplicant/cli.conf根本无法工作

答案2

看来主要问题是 BT Home Hub 第 4 版,它附带互联网订阅。禁用 5 GHz 无线、WPS、802.11 n、自动通道选择并将安全性仅设置为 WPA2 后,我现在能够在 Ubuntu 和 Windows 中几秒钟内获得连接,并且是一个非常粗略的连接(例如,大约 30 秒)每隔几分钟与wpa_supplicant最新的 Arch Linux 连接一次。

更新:使用 NetworkManager ( nmcli dev wifi connect SSID password PASSWORD) 后,我的稳定性似乎提高了一些 - 它仍然每隔几分钟左右就会掉线。

Windows 也并不总是在几分钟内获得连接,之后似乎就稳定了。

(我还尝试连接旧的 ADSL 路由器,但没有意识到它无法识别 VDSL 信号。)

答案3

wifi-menu 应该为您设置密码。应该不需要手动设置它。检查 /etc/conf.d/network-wireless@ 中 wlp0s29f7u5 的配置。另请检查/etc/wpa_supplicant.conf以查看信息是否正确。

另一件事,除非您尝试设置静态地址,否则不需要停止 dhcpcd 服务。如果它是静态的,请确保在 /etc/conf.d/network-wireless@ 中声明它

最后提供一下ip。 'dhcpcd wlp0s26f7u5' 用于 dhcp

或对于静态执行以下操作。

ip addr 添加“您的 ip”/24 dev wlp0s26f7u5 ip 路由添加默认值

编辑

我试图引用的文件位于 netctl 中。这是我的:

[verdict@sparky ~]$ cat /etc/netctl/wlo1-ZombieNet 
Description='Automatically generated profile by wifi-menu'
Interface=wlo1
Connection=wireless
Security=wpa
ESSID=ZombieNet
IP=dhcp
Key=<my password>

相关内容