Ich versuche ein Python-basiertes Programm zu steuern (das sich nicht von der Konsole löst)
#!/bin/bash
user=nobody
pid=/var/run/xx.pid
name=xx
prog=/xx.py
case $1 in
start)
/sbin/start-stop-daemon --start -b --oknodo --user "$user" --name "$name" --pidfile "$pid" --startas "$prog" --chuid nobody -- --daemon
;;
stop)
/sbin/start-stop-daemon --stop --oknodo --user "$user" --name "$name" --pidfile "$pid" --retry=TERM/5/KILL/1
;;
restart)
;;
*)
;;
esac
Der Startteil funktioniert gut. Ich kann sehen, wie das Skript ausgeführt wird, aber der Stop-Teil funktioniert nicht. Es sagt einfachNo xx found running; none killed.
Also, ich denke, mit dem Startteil stimmt etwas nicht?
quelle
$user
?/proc/pid/stat
:read(4, "5559 (python) S 1 5558 5558 0 -1"..., 1024) = 326
, so der Name sein solltepython
stattdessen vielleicht?python
und es hat funktioniert ;-P$name
muss auch passen. Ich habe völlig verpasst, dass du das weitergegeben hast. Ich aktualisiere die Antwort.