systemd Skript: Zuordnung außerhalb der Sektion; Missing '='

Habe ich die folgende (anonymisierte) systemd Skript namens tomcat-autostart.service, gespeichert in "/usr/lib/systemd/system/tomcat-autostart.service"

[Unit]
Description=Tomcat Autostart Script
Requires=var-www-projects.mount
After=var-www-projects.mount

[Service]
Type=forking
ExecStart=/usr/bin/tomcat-autostart start
ExecStop=/usr/bin/tomcat-autostart stop

[Install]
WantedBy=multi-user.target

Nach dem ausführen

sudo systemctl daemon-reload
sudo systemctl enable tomcat-autostart.service

Bekomme ich die Fehlermeldung:

Failed to execute operation: Bad message

Und ich bekomme auch die folgende Ausgabe in /var/log/messages

Feb 17 11:29:53 cheese systemd: [/usr/lib/systemd/system/tomcat-autostart.service:1] Assignment outside of section. Ignoring.
Feb 17 11:29:53 cheese systemd: tomcat-autostart.service lacks both ExecStart= and ExecStop= setting. Refusing.
Feb 17 11:29:53 cheese systemd: [/usr/lib/systemd/system/tomcat-autostart.service:1] Missing '='.
Feb 17 11:29:53 cheese systemd: [/usr/lib/systemd/system/tomcat-autostart.service:1] Missing '='.

Hatte ich es funktioniert für eine Weile, dann fügte ich einige Kommentare über die "[Einheit] " - Zeile, und es aufgehört zu arbeiten. Ich habe dann die Kommentare entfernt, und wahrscheinlich unabsichtlich verändert etwas anderes in das Skript, und ich habe nicht in der Lage, um es arbeiten wieder.

Scheint es zu erfreuen, es in seinem eigenen Widerspruch. Die erste Fehlermeldung sagt, dass es einen Einsatz in der ersten Zeile ("[Einheit]"), und der Dritte sagt, dass die Zuordnung fehlt das Zeichen'='. Also im Grunde, '[Einheit] "ist eine Zuordnung, mit der Ausnahme, dass es ist nicht, weil es fehlt das Zeichen'='.

Suche für dieses problem hat festgestellt, dass die zweite Fehlermeldung ist eine direkte Ursache des anderen. Denn es ignoriert den Abschnitt Header, es nie liest die ExecStart und ExecStop Erklärungen. Wenn ich lösen die erste und die Dritte Fehlermeldungen, ich sollte in der Lage sein, um

Was ist das tatsächliche problem mit meinem script? Ausführen von 'sudo /usr/bin/tomcat-autostart-start" gelingt als erwartet, und die häufigste Ursache auf das internet für diese Fehlermeldung ist, dass das Skript nicht absolute Pfade verwenden (was ich in diesem Fall)

InformationsquelleAutor Digit Cruncher | 2017-02-16

Schreibe einen Kommentar