![如何删除 systemctl 服务?(Arch-Linux)](https://linux22.com/image/1509365/%E5%A6%82%E4%BD%95%E5%88%A0%E9%99%A4%20systemctl%20%E6%9C%8D%E5%8A%A1%EF%BC%9F%EF%BC%88Arch-Linux%EF%BC%89.png)
在您将此问题标记为重复问题之前,我已经查看了所有存在相同问题的问题,但没有任何解决方案对我有用。
我是第一次安装 Arch-linux,并且按照一个粗制滥造的教程进行操作,在教程中,那个人解释说我应该使用:
sudo systemctl enable [email protected]
这样它就会在我启动时自动启动 wifi 服务,但是,我拼错了设备名称,它实际上是 wlo1 而不是 wl01。现在每次我启动时,我都必须等待 1 分 30 秒才能尝试启动服务超时。我尝试了多种方法摆脱它,例如
sudo systemctl disable [email protected]
sudo systemctl disable wl01.service
sudo systemctl reset-failed
所有这些方法都没能解决我的问题,第一个方法返回说没有这样的文件或目录。我该如何摆脱这个问题?
谢谢
答案1
文档中man systemctl
解释了enable
命令如何创建符号链接以及命令如何删除它们。有关详细信息,disable
请参阅单元文件部分的文档。[Install]
man systemd.unit
有一些与该部分相关的文档[Install]
,其中提供了符号链接存储位置的示例。如果该[Install]
部分包含WantedBy=multi-user-.target
,则符号链接将在以下位置创建:/etc/systemd/system/multi-user.target.wants/foo.service
因此,请检查[Install]
相关 dhcpcd 服务文件中的部分,然后检查相关的符号链接是否已被删除。
最后,正如中所述man systemctl
,还有一个更强大的disable
called版本mask
,它可以完全阻止以任何形式启动您的服务,因此您也可以尝试一下。