如何修复 Arch Linux 中“netctl 服务的作业失败”错误

有时,我将我的平板电脑配置为 wifi 热点,以便在我的 Arch Linux 桌面上使用互联网。 昨天我把无线网卡的设置搞砸了,我的热点停止工作了。 我能够与 hostpot 连接,但 Internet 在我的 Arch Linux 桌面上无法正常工作。 我尝试使用以下命令启动我的 wifi 网络配置文件:

$ sudo netctl start wlp9s0-sktab

这里, wlp9s0-sktab 是我的 wifi 网络配置文件名称。 我在尝试启动网络配置文件时收到以下错误消息。

Job for [email protected]x2dsktab.service failed because the control process exited with error code.
See "systemctl status "[email protected]x2dsktab.service"" and "journalctl -xe" for details.

在搜索 Arch Linux wiki 时,有人指出如果您使用 连字符 在您的网络配置文件的名称中。 所以,我删除了旧的 wifi 网络配置文件(即 wlp9s0-sktab):

$ sudo rm /etc/netctl/wlp9s0-sktab

然后使用“wifi-menu”命令创建一个名为“wlp9s0sktab”(不带连字符)的新文件。 但是,没有运气! 我仍然遇到同样的问题,并且互联网无法正常工作。

我运行以下命令来了解我的 wifi 网络配置文件的状态。

$ sudo netctl status wlp9s0sktab

这里, wlp9s0sktab 是我的 wifi 热点名称。

样本输出:

● [email protected] - Automatically generated profile by wifi-menu
 Loaded: loaded (/etc/systemd/system/[email protected]; enabled; vendor preset: disabled)
 Active: failed (Result: exit-code) since Sun 2017-03-12 12:25:25 IST; 1min 40s ago
 Docs: man:netctl.profile(5)
 Process: 390 ExecStart=/usr/lib/network/network start %I (code=exited, status=1/FAILURE)
 Main PID: 390 (code=exited, status=1/FAILURE)

Mar 12 12:25:24 sk systemd[1]: Starting Automatically generated profile by wifi-menu...
Mar 12 12:25:25 sk network[390]: Starting network profile 'wlp9s0sktab'...
Mar 12 12:25:25 sk network[390]: The interface of network profile 'wlp9s0sktab' is already up
Mar 12 12:25:25 sk systemd[1]: [email protected]: Main process exited, code=exited, status=1/FAILURE
Mar 12 12:25:25 sk systemd[1]: Failed to start Automatically generated profile by wifi-menu.
Mar 12 12:25:25 sk systemd[1]: [email protected]: Unit entered failed state.
Mar 12 12:25:25 sk systemd[1]: [email protected]: Failed with result 'exit-code'.While searching through Arch Wiki, someone has pointed out that we shouldn't hypen (-) in network profile name. So, Have deleted the existing network profile as shown below.

我不知道我在网络设置中错误配置了什么。 在 Arch Linux 论坛中挖掘了一下之后,我发现 systemd 导致这个问题. 我正在测试和配置本地 DHCP 服务器,所以我启用了 dhcpcd.service. 这就是为什么我的 wifi 热点无法正常工作的原因。 如果您遇到过这个问题,只需按照下面给出的这些步骤来解决它。

如何修复 Arch Linux 中的“netctl 服务的作业失败”错误

禁用 dhcpcd.service 使用命令:

$ sudo systemctl stop dhcpcd.service
$ sudo systemctl disable dhcpcd.service

接下来,删除旧的 DHCP 租约。 以下目录包含所有 dhcp 租约。

$ ls /var/lib/dhcpcd/

样本输出:

 dhcpcd-enp0s29u1u2.lease dhcpcd-wlp9s0-BlNi-QWtzaHU.lease
 dhcpcd-enp5s0.lease dhcpcd-wlp9s0-Buew-c3VkaGFu.lease
 dhcpcd-wlp9s0-AFFLIENCE.lease dhcpcd-wlp9s0-BVof-QWJp.lease
 dhcpcd-wlp9s0-AFFLIENCE.lease6 'dhcpcd-wlp9s0-Ostechnix40Tech40Service.lease'
 dhcpcd-wlp9s0-AndroidAP.lease 'dhcpcd-wlp9s0-Ostechnix40Tech40Service.lease6'
 dhcpcd-wlp9s0-B12B-amFjb2Jzb3duZGFyMw.lease dhcpcd-wlp9s0-Dev9376.lease
 dhcpcd-wlp9s0-Bcof-R2luZW91cw.lease dhcpcd-wlp9s0-Dev9376.lease6
 dhcpcd-wlp9s0-Bed6-cmFteWE.lease dhcpcd-wlp9s0-ostechnix.lease
 dhcpcd-wlp9s0-BGD4-cmVudWdhcmFndW5hdGhhbg.lease dhcpcd-wlp9s0-Pratheesh.lease
 dhcpcd-wlp9s0-BGec-TGVub3ZvIEs1MGE0MA.lease dhcpcd-wlp9s0-Raja.lease
 dhcpcd-wlp9s0-BgXq-QWtzaHU.lease dhcpcd-wlp9s0-sktab.lease
 dhcpcd-wlp9s0-BJNQ-bWFkaGFubGF2YTk1.lease dhcpcd-wlp9s0-Sklab.lease
 dhcpcd-wlp9s0-BKTt-RWxh.lease dhcpcd-wlp9s0-mynet.lease

只需删除所有这些或仅删除您首选的 dhcp 租约。

我删除了我的 wif 网络配置文件的所有 DHCP 租约,如下所示。

$ sudo rm -fr /var/lib/dhcpcd/dhcpcd-wlp9s0*

然后,使用命令从 systemd 中删除所有不必要的和以前启用的服务:

$ sudo rm /etc/systemd/system/multi-user.target.wants/netctl*

最后,删除所有连接的 wifi 网络配置文件。 如您所知,所有网络配置文件都位于 /etc/netctl/ 目录。

$ sudo rm -fr /etc/netctl/wlp9s0*

重新启动系统。

登录后,为您的 wifi 网络创建一个新的网络配置文件。

为此,请运行:

$ sudo wifi-menu

选择您的 wifi 网络名称:

避免在 wifi 网络名称中使用连字符。 单击确定以保存配置文件。

现在,使用命令检查新创建的 wifi 网络配置文件的状态:

$ sudo netctl status wlp9s0sktab

样本输出:

● [email protected] - Automatically generated profile by wifi-menu
 Loaded: loaded (/etc/systemd/system/[email protected]; static; vendor preset: disabled)
 Active: active (exited) since Sun 2017-03-12 13:26:33 IST; 2min 20s ago
 Docs: man:netctl.profile(5)
 Process: 851 ExecStart=/usr/lib/network/network start %I (code=exited, status=0/SUCCESS)
 Main PID: 851 (code=exited, status=0/SUCCESS)
 Tasks: 2 (limit: 4915)
 CGroup: /system.slice/system-netctl.slice/[email protected]
 ├─860 wpa_supplicant -q -B -P /run/wpa_supplicant_wlp9s0.pid -i wlp9s0 -D nl80211,wext -c/run/network/wpa_supplicant_wlp9s0
 └─909 dhcpcd -4 -q -t 30 -L wlp9s0

Mar 12 13:26:24 sk network[851]: Starting network profile 'wlp9s0sktab'...
Mar 12 13:26:26 sk dhcpcd[903]: DUID 00:01:00:01:20:57:b7:1b:c0:18:85:50:47:4f
Mar 12 13:26:26 sk dhcpcd[903]: wlp9s0: IAID 85:50:47:4f
Mar 12 13:26:27 sk dhcpcd[903]: wlp9s0: rebinding lease of 192.168.43.193
Mar 12 13:26:27 sk dhcpcd[903]: wlp9s0: probing address 192.168.43.193/24
Mar 12 13:26:32 sk dhcpcd[903]: wlp9s0: leased 192.168.43.193 for 43200 seconds
Mar 12 13:26:32 sk dhcpcd[903]: wlp9s0: adding route to 192.168.43.0/24
Mar 12 13:26:32 sk dhcpcd[903]: wlp9s0: adding default route via 192.168.43.1
Mar 12 13:26:33 sk network[851]: Started network profile 'wlp9s0sktab'
Mar 12 13:26:33 sk systemd[1]: Started Automatically generated profile by wifi-menu.

瞧! 有效!!

下载免费电子书:“Linux 命令行备忘单”

附加说明: 如果 Internet 仍然无法在您的系统上运行,您需要在您的系统中更新名称服务器详细信息 /etc/resolv.conf 文件。 就我而言,我已将 192.168.43.1 添加为名称服务器,并且 Internet 工作得很好!

建议阅读:

  • 如何在 Arch Linux 中从终端更新 Wifi 网络密码

希望这可以帮助。

感谢您的光临!

帮助我们帮助您:

祝你有美好的一天!!