initclt 在 Ubuntu 12 64 位中看不到初始化脚本

initclt 在 Ubuntu 12 64 位中看不到初始化脚本

我创建了一个 LSB 格式的 init 脚本,并将其复制到 /etc/init.d 目录。我可以手动启动、停止、查看服务状态,一切正常。然后,我尝试通过以下方式将服务设置为使用运行级别自动停止/启动:

update-rc.d service defaults

我看到如下警告:

update-rc.d:警告:xxx 启动运行级别参数(无)与 lsb 默认启动值(3 4 5)不匹配。

并且 initctl list”没有显示我的服务。我需要执行什么步骤才能使该服务注册或正确显示?(我知道在 RedHat 上它是“chkconfig --add xxx”)但我对 Ubuntu 不太了解。

答案1

initctl是 Uubuntu 的 upstart 机制的一部分。initctl list仅显示 upstart-jobs 的状态。您的脚本确实是 SysV init 脚本。

要列出 SysV 初始化脚本的状态,请使用以下命令:

service --status-all

您的服务应该列在那里。


要在/etc/rcN文件夹中创建链接,请使用以下命令:

update-rc.d your_init_script defaults

来自的手册页update-rc.d

如果使用默认值,则 update-rc.d 将建立链接以在运行级别 2345 中启动服务并在运行级别 016 中停止服务。

相关内容