我正在尝试为服务制作一个简单的 OpenRC 初始化脚本。到目前为止我所拥有的看起来像这样:
#!/sbin/openrc-run
CONFIG=${CONFIG:-/etc/pysystemfan.json}
pidfile=${PIDFILE:-/var/run/pysystemfan.pid}
command=${COMMAND:-/usr/sbin/pysystemfan}
command_arguments="--config ${CONFIG}"
required_files="\"$CONFIG"\"
start_stop_daemon_args="--background"
这样做的想法是CONFIG
,PIDFILE
和COMMAND
可以从相应的conf.d 文件中设置。
我的问题是,该脚本似乎在加载 config.d 文件(“缓存依赖项”)的情况下运行一次,然后在实际启动服务时不运行它。
为什么是这样?我尝试查看其他初始化脚本,但没有注意到它们处理设置的方式和我的处理方式之间有任何真正的区别。
答案1
来自文档 ast [1]:
每个初始化脚本都需要定义 start() 函数。所有其他部分都是可选的。
[1]-https://wiki.gentoo.org/wiki/Handbook:X86/Working/Initscripts