在 Ubuntu 18.04 里,为一个服务写启动脚本的最好的方式是?

2018 年 11 月 13 日
 Livid
有一些用了好多年的 init.d 脚本,最近觉得似乎应该更新一下了。
8687 次点击
所在节点    Ubuntu
48 条回复
hei1000
2018 年 11 月 13 日
不是 systemd ?我们这边 16.04 是这样的
Mithrandir
2018 年 11 月 13 日
肯定是 systemd service 啊
mason961125
2018 年 11 月 13 日
systemd
shallyy
2018 年 11 月 13 日
好奇站长同时使用几种系统?
TimLang
2018 年 11 月 13 日
正在搞 tengine 的 init.d 脚本就刷到这篇帖子。。
ffeii
2018 年 11 月 13 日
systemd
Livid
2018 年 11 月 13 日
@shallyy 我家里有超过 10 台电脑,基本上主流的系统都覆盖了。

V2EX 的开发环境我在各种系统上都搭建过,Windows / Ubuntu / macOS ……
reticentfat
2018 年 11 月 13 日
膜拜大佬,我还以为是生产环境,原来是家里
lfzyx
2018 年 11 月 13 日
systemd
chinvo
2018 年 11 月 13 日
systemd,自带 watchman、资源限制等小玩意儿
julyclyde
2018 年 11 月 13 日
@TimLang tengine 的你直接抄 nginx 的不就得了?
xuboying
2018 年 11 月 13 日
看到 18,我还以为 16 的 systemd 过时了,已经要讨论 docker 概念了, 结果看到 sysV...

个人觉得 systemd 挺好的,写个 unit 配置就能用了。init.d 里要熟悉 shell 脚本。(变相的降低了用户的入门水平)
另外,sysV 其实只能启动单一服务,多服务管理还是非常难写的。这点 systemd 解决了

PS 同求"最好"的方式
Cbdy
2018 年 11 月 13 日
这种场景正好用 pm2
https://pm2.io/doc/en/runtime/guide/process-management/#manage-any-application-type
脚本前台启动,作为 pm2 的一个 app 启动
pm2 的 daemon 进程用 systemd 管理( pm2 startup 一下即可)
est
2018 年 11 月 13 日
systemd


那些说 docker pm2 的。。你们想没想过 dockerd 和 node 是怎么启动的。。。。。

为啥要舍弃原生的去用二手的?况且原生自带的功能也不弱。
liuxu
2018 年 11 月 13 日
果断 systemd,不过一些小程序我还是 rc.local
tmly200
2018 年 11 月 13 日
service?
flowfire
2018 年 11 月 13 日
我怎么记得可以在 crontab 里写启动脚本。。。
boris1993
2018 年 11 月 13 日
感觉 systemd 就足够用了
Hardrain
2018 年 11 月 13 日
systemd unit
luozic
2018 年 11 月 13 日
Supervisord 进程守护

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/507409

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX