On Mon, Dec 19, 2016 at 9:52 AM, Marc Joliet <mar...@gmx.de> wrote: > When people compare systemd unit files to init scripts, they usually > mean *raw* (LSB?) sysvinit scripts (as IIUC Debian use{s,d}), with all > of their ridiculous amounts of boilerplate.
The latest Debian init.d skeleton uses "#!/lib/init/init-d-script" as its shebang <BEGIN> th@localhost ~ $ cat /etc/init.d/skeleton #!/bin/sh # kFreeBSD do not accept scripts as interpreters, using #!/bin/sh and sourcing. if [ true != "$INIT_D_SCRIPT_SOURCED" ] ; then set "$0" "$@"; INIT_D_SCRIPT_SOURCED=true . /lib/init/init-d-script fi ### BEGIN INIT INFO # Provides: skeleton # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Example initscript # Description: This file should be used to construct scripts to be # placed in /etc/init.d. This example start a # single forking daemon capable of writing a pid # file. To get other behavoirs, implemend # do_start(), do_stop() or other functions to # override the defaults in /lib/init/init-d-script. ### END INIT INFO # Author: Foo Bar <foo...@baz.org> # # Please remove the "Author" lines above and replace them # with your own name if you copy and modify this script. DESC="Description of the service" DAEMON=/usr/sbin/daemonexecutablename </END> You can source an environment file and add "DAEMON_ARGS=" should you need to do so. This was created in the debian-devel@ systemd thread by the sysinit/sysvrc maintainer.