我需要做一个新的形象,并选择了新的16.04ubuntu,以便我可以获得一些软件包的更新版本,而不是从源代码安装。到目前为止,我对这个决定感到遗憾,因为网上文档很少。
使用12.04和14.04,我通常能够重新使用自定义编译的启动脚本,方法是安装一个包,然后删除(而不是清除)它来创建ubuntu启动脚本。然后我就可以编辑它们来指向正确的配置文件和二进制文件。
例如,要使用最新的openresty,我可以这样做:
apt-get install nginx
apt-get remove nginx然后,我只需更新/etc/init.d/nginx脚本就可以指向我的自定义二进制/配置文件,并且我有一个愉快的ubuntu启动脚本。太棒了!
此方法不再适用于16.04。
我编辑过:
/etc/init.d/nginx/etc/init/nginx.conf/lib/system.d/system/nginx.serviceubuntu从不提取我的二进制文件(在/usr/local/openresty/nginx/sbin/nginx中)。它总是在启动时运行/sbin/nginx (一开始我错过了卸载‘nginx’),或者什么都没有。其他软件包也是如此。
Ubuntu关于从暴发户过渡的文档在这方面缺乏,他们关心的是"start stop“。
我不知道ubuntu在哪里决定这件事。我找不到指向/sbin/nginx的任何配置文件。原木帮不上忙。我遇到的每个潜在文件都指向备用二进制文件和配置文件。
如果有人能分享一个好的资源在使用新的发射系统和它看起来/存储信息,我将难以置信地感谢。
似乎涉及到一个数据库,因为它检测到了文件更改并要求我重新加载--但我还没有找到它。
在玩了很多次之后,我想出了以下几点:
看起来,nginx包安装了两种类型的设置,但只使用一种。有些问题与此有关。
/etc/init.d/nginx和/etc/init/nginx.conf/lib/systemd/system/nginx.service和/etc/systemd/system/nginx.service从试运行:*运行systemctl disable nginx.service禁用/删除大多数链接和文件*删除/etc/systemd/system/nginx.service中的文件如果存在*将一个新文件放在/lib/systemd/system/nginx.service *运行systemctl enable nginx.service
/lib/systemd/system/nginx.service中的文件必须是一个文件;它不能是符号链接(否则会出现太多的符号链接错误)
现在看来是可行的。我希望我可以使用符号链接,因为这些文件被绑定到版本控制。
发布于 2016-04-27 18:03:32
您能为您的自定义安装创建一个新服务,然后使它自动启动吗?
[Unit]
Description=Jonathan Vanasco nginx
[Service]
ExecStart=STARTUP COMMAND YOU WANT FOR CUSTOM
[Install]
WantedBy=multi-user.target然后检查它的启动:
systemctl start NAMEOFCUSTOM.service然后在引导时设置为自动启动:
systemctl enable NAMEOFCUSTOM.servicehttps://serverfault.com/questions/773162
复制相似问题