Systemd beendet den Autostart-Service (xampp). Wie kann man das verhindern?

718
Alex

Der Dienst xampp.servicestartet nicht automatisch, obwohl er aktiviert ist. Es scheint, dass systemd es nach einem erfolgreichen Start (?) Tötet.

Es befindet sich unter / etc / systemd / system / und enthält Folgendes

[Unit] Description=XAMPP  [Service] ExecStart=/opt/lampp/lampp start  [Install] WantedBy=multi-user.target 

systemctl --failed kehrt zurück:

 UNIT LOAD ACTIVE SUB DESCRIPTION ● xampp.service loaded failed failed XAMPP 

systemctl status xampp.service kehrt zurück:

● xampp.service - XAMPP Loaded: loaded (/etc/systemd/system/xampp.service; enabled; vendor preset: disabled) Active: failed (Result: timeout) since Mo 2016-11-21 02:04:10 CET; 4min 56s ago Process: 459 ExecStart=/opt/lampp/lampp start (code=exited, status=0/SUCCESS) Main PID: 459 (code=exited, status=0/SUCCESS)  Nov 21 02:02:40 tangboshi lampp[459]: XAMPP: Starting Apache...ok. Nov 21 02:02:40 tangboshi lampp[459]: XAMPP: Starting MySQL...ok. Nov 21 02:02:40 tangboshi proftpd[600]: tangboshi - ProFTPD 1.3.4c (maint) (built Fri Aug 26 2016 11:19:40 CEST) standalone mode STARTUP Nov 21 02:02:40 tangboshi lampp[459]: XAMPP: Starting ProFTPD...ok. Nov 21 02:02:40 tangboshi proftpd[600]: tangboshi - ProFTPD killed (signal 15) Nov 21 02:04:10 tangboshi systemd[1]: xampp.service: State 'stop-sigterm' timed out. Killing. Nov 21 02:04:10 tangboshi systemd[1]: xampp.service: Killing process 576 (mysqld_safe) with signal SIGKILL. Nov 21 02:04:10 tangboshi systemd[1]: xampp.service: Killing process 737 (mysqld) with signal SIGKILL. Nov 21 02:04:10 tangboshi systemd[1]: xampp.service: Unit entered failed state. Nov 21 02:04:10 tangboshi systemd[1]: xampp.service: Failed with result 'timeout'. 
3

1 Antwort auf die Frage

2
Geoff Reedy

Es gibt nicht genug Informationen, um sicher zu gehen, aber ich schätze, dass lamp startdie einzelnen Komponentendienste im Hintergrund ausgeführt werden und beendet werden, wenn sie alle gestartet werden. Der Standarddiensttyp ist jedoch einfach, wenn der von systemd gestartete Prozess im Vordergrund bleiben soll. Wenn das Startskript beendet ist, wird davon ausgegangen, dass der Dienst beendet / beendet wurde und das System die anderen Prozesse bereinigt, die in diesem Kontext ausgeführt werden. Wenn Sie Type=forkingim Servicebereich hinzufügen, wird systemd das Richtige tun. Weitere Informationen finden Sie auf der Manpage systemd.service

Dies löste zwar mein Problem, vielen Dank! Alex vor 7 Jahren 0