2017-03-21 4 views
0

Meine app.service Datei [Service] Teil ist die folgende: -Ändern systemd.service TimeoutSec Wert auf „unendlich“ hat keine Auswirkung

[Service] 
Type=forking 
Restart=no 
IgnoreSIGPIPE=no 
GuessMainPID=no 
ExecStart=/opt/app/appl_init.d start 
ExecStop=/opt/app/appl_init.d stop 
TimeoutSec=infinity 

Nach dem habe ich installiert die App, und die Datei korrekt kopiert wird zu /usr/lib/systemd/system/app.service.

Ich habe systemctl daemon-reload ausgeführt, aber es scheint keinen Einfluss auf die Startzeit zu haben! Es schlägt fehl, so wie ich systemctl start app oder systemctl reload app.service mit dem folgenden Fehler führen: -

Job for app.service failed because a fatal signal was delivered to the control process. See "systemctl status app.service" and "journalctl -xe" for details 

Ausgabe von systemctl status app ist: -

● app.service - ApplicationTest 
    Loaded: loaded (/opt/app/appl_init.d; enabled; vendor preset: disabled) 
    Active: failed (Result: signal) since Tue 2017-03-21 01:55:22 EDT; 1min 4s ago 
    Docs: man:app(8) 
    Process: 4126 ExecStart=/opt/app/appl_init.d start (code=killed, signal=KILL) 

Mar 21 01:55:22 centosvm systemd[1]: Starting ApplicationTest... 
Mar 21 01:55:22 centosvm systemd[1]: app.service start operation timed out. Terminating. 
Mar 21 01:55:22 centosvm systemd[1]: app.service stop-final-sigterm timed out. Killing. 
Mar 21 01:55:22 centosvm systemd[1]: app.service: control process exited, code=killed status=9 
Mar 21 01:55:22 centosvm systemd[1]: Failed to start ApplicationTest. 
Mar 21 01:55:22 centosvm systemd[1]: Unit app.service entered failed state. 
Mar 21 01:55:22 centosvm systemd[1]: app.service failed. 

Eine andere sonderbare Sache, die mir aufgefallen ist, als ich systemctl show app.service -p TimeoutSec laufen, I don‘ t erhalten irgendein Ergebnis; es ist leer?

Ich habe versucht, eine systemctl reboot, aber immer noch, kein Würfel.

Natürlich, wenn ich den Wert auf etwas anderes wie TimeoutSec=5min ändern, dann funktioniert es vollkommen in Ordnung. Aber ich brauche diese Anwendung wirklich, um die Unendlichkeit aufzunehmen.

Wohin gehe ich falsch?

+0

Beginnen Sie wirklich einen "Forking" -Service? –

+0

Ja, ich verzweige, also können Kindprozesse als Dämonen existieren, die nach der anfänglichen Einstellung übernehmen. –

Antwort

1

TimeoutSec=0 das Problem behoben.

Anscheinend, wenn Sie eine Version von Systemd älter als 229 verwenden, müssen Sie 0 anstelle von unendlich verwenden, um das Zeitlimit zu deaktivieren.

Verwandte Themen