initscripts: Implement storing PIDs in loadproc

Some programs do not write their own PID files any more, but since our
initscripts heavily rely on those, this extension allows to store it
easily.

Signed-off-by: Daniel Weismüller <daniel.weismueller@ipfire.org>
This commit is contained in:
Michael Tremer
2024-01-11 15:59:34 +01:00
committed by Daniel Weismüller
parent dd8ef8cc10
commit c3019331df

View File

@@ -446,6 +446,7 @@ loadproc()
local pidfile=""
local forcestart=""
local nicelevel=""
local pid
# This will ensure compatibility with previous LFS Bootscripts
if [ -n "${PIDFILE}" ]; then
@@ -521,12 +522,19 @@ loadproc()
(
${cmd} &>/dev/null
) &
pid="$!"
evaluate_retval
else
${cmd}
pid="$!"
evaluate_retval # This is "Probably" not LSB compliant, but required to be compatible with older bootscripts
fi
# Write the pidfile
if [ -n "${pid}" -a -n "${pidfile}" ]; then
echo "${pid}" > "${pidfile}"
fi
return 0
}