Ich habe mehrere Upstart-Skripte geschrieben, um sie transmission-daemon
für mehrere Benutzer zu starten . Das Skript lautet wie folgt:
start on (local-filesystems and net-device-up IFACE=eth0 and runlevel [235])
stop on runlevel [016]
kill timeout 50
respawn
env USER=user
env PIDFILE=/var/run/transmission-user.pid
script
DAEMON=$(which transmission-daemon) || exit 0
CONFIGDIR=/home/$USER/.config/transmission-daemon
exec start-stop-daemon --start --quiet --chuid $USER --pidfile $PIDFILE --make-pidfile --exec $DAEMON -- -f --config-dir $CONFIGDIR --logfile $CONFIGDIR/daemon.log
end script
post-stop exec rm -f $PIDFILE
Ich würde dies konvertieren:
env USER=user
env PIDFILE=/var/run/transmission-user.pid
Dazu:
env USER=user
env PIDFILE=/var/run/transmission-$USER.pid
Aber Emporkömmling erlaubt nicht. Ich kann es tun, wenn ich diese Zeilen in den Skriptabschnitt verschiebe:
script
USER=user
PIDFILE=/var/run/transmission-$USER.pid
...
end script
In diesem Fall ist die PIDFILE im Post-Stop-Bereich leer.
Gibt es eine Möglichkeit, dies zu tun?
upstart
environment-variables
Juan Simón
quelle
quelle