首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我无法在ubuntu-16.04和systemd上启动正确的项目

我无法在ubuntu-16.04和systemd上启动正确的项目
EN

Server Fault用户
提问于 2016-04-27 04:02:39
回答 1查看 10.8K关注 0票数 1

我需要做一个新的形象,并选择了新的16.04ubuntu,以便我可以获得一些软件包的更新版本,而不是从源代码安装。到目前为止,我对这个决定感到遗憾,因为网上文档很少。

使用12.04和14.04,我通常能够重新使用自定义编译的启动脚本,方法是安装一个包,然后删除(而不是清除)它来创建ubuntu启动脚本。然后我就可以编辑它们来指向正确的配置文件和二进制文件。

例如,要使用最新的openresty,我可以这样做:

代码语言:javascript
复制
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.service

ubuntu从不提取我的二进制文件(在/usr/local/openresty/nginx/sbin/nginx中)。它总是在启动时运行/sbin/nginx (一开始我错过了卸载‘nginx’),或者什么都没有。其他软件包也是如此。

Ubuntu关于从暴发户过渡的文档在这方面缺乏,他们关心的是"start stop“。

我不知道ubuntu在哪里决定这件事。我找不到指向/sbin/nginx的任何配置文件。原木帮不上忙。我遇到的每个潜在文件都指向备用二进制文件和配置文件。

如果有人能分享一个好的资源在使用新的发射系统和它看起来/存储信息,我将难以置信地感谢。

似乎涉及到一个数据库,因为它检测到了文件更改并要求我重新加载--但我还没有找到它。

更新

在玩了很多次之后,我想出了以下几点:

看起来,nginx包安装了两种类型的设置,但只使用一种。有些问题与此有关。

  1. /etc/init.d/nginx/etc/init/nginx.conf
  2. /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中的文件必须是一个文件;它不能是符号链接(否则会出现太多的符号链接错误)

现在看来是可行的。我希望我可以使用符号链接,因为这些文件被绑定到版本控制。

EN

回答 1

Server Fault用户

发布于 2016-04-27 18:03:32

您能为您的自定义安装创建一个新服务,然后使它自动启动吗?

代码语言:javascript
复制
[Unit]
Description=Jonathan Vanasco nginx

[Service]
ExecStart=STARTUP COMMAND YOU WANT FOR CUSTOM

[Install]
WantedBy=multi-user.target

然后检查它的启动:

代码语言:javascript
复制
systemctl start NAMEOFCUSTOM.service

然后在引导时设置为自动启动:

代码语言:javascript
复制
systemctl enable NAMEOFCUSTOM.service
票数 5
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/773162

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档