Systemd-Servicedatei für ASSP

Systemd-Servicedatei für ASSP

Ich verwende ASSP unter CentOS 7, das systemd verwendet. Die einzige vorgefertigte Servicedatei, die ich finden konnte (wietoforge.com) verwendet den Oneshot-Typ, von dem ich nicht sicher bin, ob er richtig ist. Noch wichtiger ist, dass der Stop-Befehl alle Perl-Programme zu beenden scheint, die ich laufen habe (also habe ich das auskommentiert). Aber jetzt bin ich mir nicht sicher, ob es beim Herunterfahren richtig beendet wird. Kann mir jemand einen Rat geben, wie man die Servicedatei verbessern kann:

[Unit]
Description=AntiSpam SMTP Proxy
After=network.target

[Service]
Type=Simple
Environment=PERL5LIB=/root/perl5/lib/perl5/
ExecStartPre=-rm -f /usr/local/assp/pid
ExecStart=/usr/bin/perl /usr/local/assp/assp.pl /usr/local/assp/
ExecStopPost=-rm -f /usr/local/assp/pid

[Install]
WantedBy=multi-user.target

Antwort1

Type=oneshotergibt keinen Sinn für Programme, die kontinuierlich laufen sollen, egal ob als Daemon oder auf andere Weise. Also haben Sie damit recht. Sie haben tatsächlich ein weiteres schlechtes Internet-Tutorial gefunden (auf einer Site, die dafür berüchtigt ist; und dieses Tutorial hat auch viele andere Probleme).

Aus der Überprüfung des Beispiel-Init-Skripts im Wiki von ASSP geht hervor, dass das Programm im Vordergrund ausgeführt wird und sich nicht selbst als Daemon aufbaut. Type=simple(Die Standardeinstellung) ist für diese Art von Dienst geeignet.

Für einen Dienst ist eine ExecStop=Zeile normalerweise nicht erforderlich Type=simple, da systemd bereits weiß, welcher Prozess gestoppt werden soll. Sie wäre nur für etwas mit einem ungewöhnlichen Stoppverfahren erforderlich, aber assp akzeptiert einfach ein Signal und wird wie jeder andere Prozess beendet. Sie können diese Zeile weglassen.

Abgesehen von diesen Problemen haben Sie eine Zeile dupliziert ExecStartPre=. Sie brauchen sie wahrscheinlich nur einmal. Möglicherweise möchten Sie auch das Verzeichnis festlegen, WorkingDirectory=in dem Sie assp installiert haben, da das Init-Skript im alten Stil dies auch tat.

verwandte Informationen