systemctl启用netctl.service有什么作用

systemctl启用netctl.service有什么作用

我有一个运行Arch 的小型arm 服务器。我只想用于dhcpcd我的以太网连接,所以我禁用了netctl.servicenetctl-ifplugd.service。事实证明这不起作用,我无法再连接到机器。服务器的根目录位于 USB 密钥上,我可以将其安装在桌面上,所以问题是:

如何systemctl enable netctl.service操作该 USB 上的文件和/或符号链接文件?

等效的替代问题是,它systemctl enable netctl.service做什么?

答案1

我有一个运行Arch 的小型arm 服务器。我想仅使用 dhcpcd 进行以太网连接,因此我禁用了 netctl.service 和 netctl-ifplugd.service。事实证明这不起作用,我无法再连接到机器。

您确定在禁用 netctl 后启用 dhcpcd 吗?

如何通过操作 USB 上的文件和/或符号链接文件来“systemctl 启用 netctl.service”?

等效的替代问题是,“systemctl启用netctl.service”是做什么的?

所有systemctl enable要做的就是在 中创建来自/usr/lib/systemd/system//etc/systemd/system/到适当目标目录的符号链接/etc/systemd/system/,后一个目录中的服务覆盖前一个目录中的服务。

来自系统控制(1)联机帮助页:

enable NAME...
    Enable one or more unit files or unit file instances, as
    specified on the command line. This will create a number 
    of symlinks as encoded in the "[Install]" sections of the
    unit files.

systemctl enable您可以使用以下命令手动启用 netctl 服务,而不是使用:

ln -s /usr/lib/systemd/system/netctl.service \
      /etc/systemd/system/multi-user.target.wants/netctl.service

要手动禁用它,您可以使用以下命令删除使用上一个ln命令创建的符号链接:

rm /etc/systemd/system/multi-user.target.wants/netctl.service

可以通过查找相关服务文件部分WantedBy中的设置来找到适当的目标目录,尽管较旧的服务文件有时具有而不是,并且您可能希望切换到使用而不是,但两者都可以正常工作。[Install]AliasWantedByWantedBy

您可以先检查 dhcpcd 服务是否已正确启用,而不是恢复使用 netctl,如果是,则可以在另一台计算机上安装文件系统后使用journalctl's--directory--rootflags 检查 dhcpcd 服务的日志,看看是否可以提供任何有关其无法正常工作的原因的线索。

相关内容