如何让 Linux 在用户空间启动早期执行一个脚本

2019-06-22 12:29:48 +08:00
 Oathbinder

目前有 A.service:

type=oneshot
Before=emergency.service sysinit.target
ExecStart=/usr/bin/foo

A 在系统启动早期被调用并且只运行一次不 fork 到后台,如果想让 B.service 也只运行一次不 fork 到后台,而且要确保一定要在 A 启动前就执行完毕,应该如何设置 B.service 的参数并且不修改 A.service ?或者说能不能让 B 在系统启动更早期运行,只要能保证 B 执行完才去启动其他 service。B.service 的作用是备份一个特定文件所以只涉及到了 /的读写,不会用到网络等服务,所以越早运行 B 越好

2958 次点击
所在节点    Linux
2 条回复
Earl
2019-06-22 13:37:45 +08:00
如果 B 只需要在 A 前面,那么在 B 里面加上 Before 命令就好了。
liangzi
2019-06-22 14:50:23 +08:00
有的发行版 开启默认有静态服务 只在开机启动 比如 after.local 对应的服务

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

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

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

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

© 2021 V2EX