systemctl 等效于什么

systemctl 等效于什么

我正在使用以下方法将包从 .rpm 转换为 .deb本教程。但是,为了测试和调试应用程序,我需要运行它。程序自述文件解释了如何将其作为服务运行:

systemctl enable progname.service
systemctl start progname.service

这些命令在 ubuntu 上对应的是什么?

答案1

Ubuntu 目前正在计划/开发使用systemd将来。请参阅以下链接了解详情:Vivid 将切换到使用 systemd 启动...发行说明:启动和服务管理

我正在使用 14.04。

您可以使用更原生的命令update-rc.d。查看手册页。

使用默认值启用服务(参见手册页):

sudo update-rc.d foo_service defaults

禁用服务:

sudo update-rc.d foo_service remove

请注意,为了删除没有错误消息foo_service文件必须不存在。但是您可以强制:

sudo update-rc.d -f foo_service remove

答案2

systemctl 是 systemd 的控制实用程序:

http://www.freedesktop.org/software/systemd/man/systemctl.html

请注意,Ubuntu 不使用 systemd,而是使用 upstart,它原则上做了一些相同的事情,但有一些不同的概念。

我对 systemd 了解不多,但根据我发布的文档,我认为您不需要“启用”服务。只需将服务的 .conf 文件放入 /etc/init 中,upstart 就会知道这一点。

但问题的关键在于:您的服务的 systemd 配置文件在 Ubuntu 上未经修改就无法运行,您必须将其“翻译”为 Upstart 的等效版本。以下是 upstart 的文档:

http://upstart.ubuntu.com/cookbook/

一旦您有了合适的 upstart .conf 文件,您就可以使用以下命令启动服务(我认为相当于 systemctl start):

start your-service

答案3

14.04 上的默认软件包systemd-services不提供该systemdctl命令。

必读文章如何在 Ubuntu 14.04 Trusty Tahr 和 Ubuntu 12.04 Precise Pangolin 上安装和测试 Systemd如果你想使用systemd

皮蒂电力供应协议

有一个 PPAppa:pitti/systemd为 LTS 12.04、14.04 及即将推出的版本提供足够的软件包。

相关内容