![Debian systemd 启动时出现 macspoofing 错误:作业 sockets.target/start 被删除以破坏](https://linux22.com/image/81022/Debian%20systemd%20%E5%90%AF%E5%8A%A8%E6%97%B6%E5%87%BA%E7%8E%B0%20macspoofing%20%E9%94%99%E8%AF%AF%EF%BC%9A%E4%BD%9C%E4%B8%9A%20sockets.target%2Fstart%20%E8%A2%AB%E5%88%A0%E9%99%A4%E4%BB%A5%E7%A0%B4%E5%9D%8F%20.png)
我所做的是在每次启动时添加 macspoofing,完全遵循本指南的本节:https://wiki.archlinux.org/index.php/MAC_address_spoofing#macchanger (我正在进行 Debian 测试)一切正常,互联网连接和 macchanger 都完成了他的工作,无论如何,每次启动时 systemd 都会给我两个错误:
systemd[1]: networking.service: Job networking.service/start deleted to break ordering cycle starting with sysinit.target/start
systemd[1]: sockets.target: Job sockets.target/start deleted to break ordering cycle starting with [email protected]/start
我应该怎么办?
编辑:在第二次重新启动时,macspoof 消息被 dnscrypt 替换(我在 macchanger 之前也安装了它),而在第三次重新启动时,只显示一条消息,那就是networking.service 消息。那么这些服务顺序有些混乱,如何管理这些东西呢?
编辑2:好吧,我解决了将 macchanger 脚本添加到 /etc/rc.local
答案1
您需要提供您编写的服务文件,请用此编辑您的原始问题。 (应该是评论,但我没有许可)。
基本问题是您的服务文件已按所需的启动顺序创建了循环。示例:systemd 想要a
先启动,然后启动b
,然后启动c
,但a
又想在之后启动c
。我怀疑这两条有罪的行是BindsTo
和After
,因为它使其成为它想要等待的同一服务的一部分。
不过,您可以按照这个答案用cvol.service
替换为你的[email protected]
.相关命令:systemctl show -p Requires,Wants,Requisite,BindsTo,PartOf,Before,After [email protected]
可以找到关键字的描述这里