From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michael Tremer To: development@lists.ipfire.org Subject: [RFC PATCH] initscripts: Add switch to start processes in background Date: Tue, 27 Jul 2021 08:59:00 +0000 Message-ID: <20210727085900.2253-1-michael.tremer@ipfire.org> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============8653804856692924735==" List-Id: --===============8653804856692924735== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Since systemd, many programs no longer behave like a well-behaved daemon. To avoid any extra solutions, this patch adds a -b switch which will start a program in the background and throw away any output. The behaviour remains unchanged for any other programs. Signed-off-by: Michael Tremer --- src/initscripts/system/functions | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/initscripts/system/functions b/src/initscripts/system/functi= ons index d610a524d..e44a2b4a1 100644 --- a/src/initscripts/system/functions +++ b/src/initscripts/system/functions @@ -436,6 +436,7 @@ getpids() #***************************************************************************= **** loadproc() { + local background=3D"" local pidfile=3D"" local forcestart=3D"" local nicelevel=3D"" @@ -448,6 +449,10 @@ loadproc() while true do case "${1}" in + -b) + background=3D"1" + shift 1 + ;; -f) forcestart=3D"1" shift 1 @@ -506,8 +511,16 @@ loadproc() cmd=3D"nice -n "${nicelevel}" ${cmd}" fi =20 - ${cmd} - evaluate_retval # This is "Probably" not LSB compliant, but required to be = compatible with older bootscripts + if [ -n "${background}" ]; then + ( + ${cmd} &>/dev/null + ) & + evaluate_retval + else + ${cmd} + evaluate_retval # This is "Probably" not LSB compliant, but required to be= compatible with older bootscripts + fi + return 0 } =20 --=20 2.20.1 --===============8653804856692924735==--