如何设置服务?
我有一个脚本,我想在我的Ubuntu Server 11.04无头盒子上作为服务运行。 也就是说,我希望在/etc/init.d/下有正确的文件,并且能够通过service
命令控制它。
是否有任何指南可以告诉我如何做到这一点?
除非您使用15.04或更高版本(使用systemd
),否则如果将脚本转换为Upstart作业,可能会更好,而不是按照/etc/init.d/
的示例(其中是System V风格的init脚本,Ubuntu和其他发行版正在逐渐远离它们。
Upstart Cookbook提供了大量有关Upstart工作如何运作的信息。 虽然我不会将其描述为HOWTO,但如果您将信息与查看/etc/init/
的库存Ubuntu Upstart作业相结合,您将开始了解情况。
我建议从Cookbook的第4节和第5节开始, “概念和术语”和“配置”
以下是如何创建upstart脚本的一个非常简单的示例: https : //wiki.frugalware.org/index.php/Upstart_Job_HOWTO
更新:以上链接已损坏。 以下是脚本的示例:
description "My startup service" author "You or someone else" version "3.14" pre-start script echo 'Starting my service ...' end script start on net-device-up stop on runlevel [!2345] console output respawn exec /path/to/your/custom/script
根据需要进行调整。
您应该将脚本放在/etc/init/yourfilename.conf
然后重新加载配置:
sudo initctl reload-configuration
如果一切正常,您应该可以通过以下方式启动它:
sudo start yourfilename