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

l0b*_*0b0 10 wifi wpa-supplicant arch-linux wpa

TL;博士读拱维基上的文章后安装无线设置WPA恳求,想下面的建议和论坛帖子的主人,我无法得到任何的以下卡引导拱当连接到我的无线网络Linux 2013-09-01 ISO:


方法 1(默认):

这样做的默认方式是应该只是systemctl stop dhcpcd.service其次wifi-menu。它找到网络:

[SSID] + wpa 10
Run Code Online (Sandbox Code Playgroud)

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

Job for netctl@wlp0s29f7u5\x2dBTHub4\x2dGRK6.service failed. See 'systemctl status netctl@wlp0s29f7u5\x2dBTHub4\x2dGRK6.service' and 'journalctl -xn' for details.
Run Code Online (Sandbox Code Playgroud)

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

WPA association/authentication failed for interface 'wlp0s29f7u5'
Run Code Online (Sandbox Code Playgroud)

这是否意味着输入/etc/netctl/wlp0s29f7u5-BTHub4-GRK6错误?我不知道程序什么时候需要实际的Wi-Fi 密码,什么时候需要类似psk来自wpa_passphraseman 5 netctl.profile例如,没有说)的值。


方法 2(wpa_supplicant以及wpa_passphrase根据deerafwarl0ck的建议和维基页面):

# 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
Run Code Online (Sandbox Code Playgroud)

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

# iw dev wlp0s26f7u5 connect [SSID]
command failed: Operation not supported (-95)
Run Code Online (Sandbox Code Playgroud)

dai*_*isy 5

你设置密码了wpa_passphrase吗?例如

%> wpa_passphrase SSID passphrase
network={
        ssid="SSID"
        #psk="passphrase"
        psk=28964ba6ea8b8f3a0db1c4414b327da253d0af5d4f4adccec0f8abf5b05b10f8
}
Run Code Online (Sandbox Code Playgroud)

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


l0b*_*0b0 5

看来主要问题是 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 信号。)