
Ich habe mein eigenes Init-Skript zum Starten einer Mono-Webanwendung innerhalb mod-mono-server2
eines Containers erstellt (ich habe es nicht verwendet AutoHosting
, bin mir dessen bewusst).
Als ich openSUSE 11.4 hatte, init
konnte ich auf der Konsole genau lesen, was schief gelaufen war. Jetzt musste ich meine App auf einen Server migrieren, auf dem openSUSE 12.1 läuft, das verwendet systemctl
, und es ist ein Chaos, herauszufinden, warum es nicht startet.
Der Startbefehl ist nur ein typischer Befehl sudo -u mono-user mod-mono-server2 [params]
, der die PID in eine Datei schreibt /var/run/spambusters/
(um sie zu beenden, wenn ich sie stoppen möchte). Wenn ich das versuche, /etc/init.d/spambusters start
erhalte ich nur ein generisches Job failed. See system logs and 'systemctl status' for details.
.
Aber ich kann keine weiteren Informationen bekommen.........
spambusters@dom:~/source> sudo systemctl status spambusters.service
spambusters.service - LSB: Spambusters instance (as spambusters)
Loaded: loaded (/etc/init.d/spambusters)
Active: failed since Fri, 07 Sep 2012 20:37:56 +0200; 1min 37s ago
Process: 29731 ExecStart=/etc/init.d/spambusters start (code=exited, status=1/FAILURE)
CGroup: name=systemd:/system/spambusters.service
â”” 29744 sudo -u spambusters /usr/bin/mod-mono-server2 --nonstop --port 8089 --address 127.0.0.1 --applicat...
spambusters@dom:~/so
Das Systemprotokoll /var/log/messages
enthält nur
Sep 7 20:37:56 dom sudo: root : TTY=console ; PWD=/ ; USER=spambusters ; COMMAND=/usr/bin/mod-mono-server2 --nonstop --port 8089 --address 127.0.0.1 --applications /:/home/spambusters/srv/www/domains/www.burnthespam.info/htdocs
Ich verstehe zwar, dass diese Frage auch für serverfault.com geeignet sein könnte, da es um Serveradministration geht,meine direkte Frage ist
Wie finde ich weitere Informationen zu Fehlern in einem Init-Skript, wenn der Root-Prozess systemctl statt init ist?
Antwort1
Wenn das Betriebssystem systemd-journald verwendet,
journalctl -a _SYSTEMD_UNIT=spambusters.service
(Die neueste systemd-Version zeigt dasselbe in systemctl status
, aber OpenSuSE hat eine ältere.)
Auch,verwende nichtsudo
wenn Sie es nur als anderer Benutzer ausführen möchten.VerwendenUser=spambusters
stattdessen.