spaceduck
Anmeldungsdatum: 4. Juli 2020
Beiträge: 6
|
Hallo, ich habe ein kleines Problem mit Postfix bei dem ich nicht weiterkomme...
Wenn ich meinen Server reboote, dann startet Postfix nicht ● postfix.service loaded active exited Postfix Mail Transport Agent
● postfix@-.service loaded failed failed Postfix Mail Transport Agent (instance -) Mailserver geht nicht, soweit klar...
ein "systemctl restart postfix.service" in der Shell, der Postfix Dienst startet fehlerfrei und alles funktioniert. postfix.service loaded active exited Postfix Mail Transport Agent
postfix@-.service loaded active running Postfix Mail Transport Agent (instance -) im syslog findet sich nur ein Eintrag:
postfix@.service: Start operation timed out. Terminating Hat wer eine Idee wo ich bei der Fehlersuche ansetzen kann?
|
sebix
Moderator, Webteam
Anmeldungsdatum: 14. April 2009
Beiträge: 5428
|
Zeige bitte einmal die Ausgabe von systemctl status postfix , am besten nach einem reboot.
|
spaceduck
(Themenstarter)
Anmeldungsdatum: 4. Juli 2020
Beiträge: 6
|
systemctl status postfix
● postfix.service - Postfix Mail Transport Agent
Loaded: loaded (/lib/systemd/system/postfix.service; enabled; vendor preset: enabled)
Active: active (exited) since Sat 2020-07-04 23:10:18 CEST; 1min 8s ago
Process: 3774 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 3774 (code=exited, status=0/SUCCESS)
Jul 04 23:10:15 Attila-2 systemd[1]: Starting Postfix Mail Transport Agent...
Jul 04 23:10:18 Attila-2 systemd[1]: Started Postfix Mail Transport Agent. systemctl status postfix@-.service
● postfix@-.service - Postfix Mail Transport Agent (instance -)
Loaded: loaded (/lib/systemd/system/postfix@.service; indirect; vendor preset: enabled)
Active: failed (Result: timeout) since Sat 2020-07-04 23:10:14 CEST; 3min 45s ago
Docs: man:postfix(1)
Process: 1792 ExecStartPre=/usr/lib/postfix/configure-instance.sh - (code=killed, signal=TERM)
Jul 04 23:08:40 Attila-2 systemd[1]: Starting Postfix Mail Transport Agent (instance -)...
Jul 04 23:10:10 Attila-2 systemd[1]: postfix@-.service: Start-pre operation timed out. Terminating.
Jul 04 23:10:14 Attila-2 systemd[1]: postfix@-.service: Failed with result 'timeout'.
Jul 04 23:10:14 Attila-2 systemd[1]: Failed to start Postfix Mail Transport Agent (instance -). Mir ist noch nie bewusst aufgefallen das es da postfix und die Instanz postfix@- gibt... Keine Ahnung ob das schon immer so war.
|
sebix
Moderator, Webteam
Anmeldungsdatum: 14. April 2009
Beiträge: 5428
|
spaceduck schrieb: systemctl status postfix@-.service
● postfix@-.service - Postfix Mail Transport Agent (instance -)
Loaded: loaded (/lib/systemd/system/postfix@.service; indirect; vendor preset: enabled)
Active: failed (Result: timeout) since Sat 2020-07-04 23:10:14 CEST; 3min 45s ago
Docs: man:postfix(1)
Process: 1792 ExecStartPre=/usr/lib/postfix/configure-instance.sh - (code=killed, signal=TERM)
Jul 04 23:08:40 Attila-2 systemd[1]: Starting Postfix Mail Transport Agent (instance -)...
Jul 04 23:10:10 Attila-2 systemd[1]: postfix@-.service: Start-pre operation timed out. Terminating.
Jul 04 23:10:14 Attila-2 systemd[1]: postfix@-.service: Failed with result 'timeout'.
Jul 04 23:10:14 Attila-2 systemd[1]: Failed to start Postfix Mail Transport Agent (instance -). Mir ist noch nie bewusst aufgefallen das es da postfix und die Instanz postfix@- gibt... Keine Ahnung ob das schon immer so war.
Das frag ich mich auch. Jedenfalls scheint das zumindest bei bionic Standard zu sein. Der status von postfix.service (active (exited) ) passt, aber warum postfix@-.service failed ist mir noch nicht klar. Was zeigt denn journalctl -u postfix@- ?
|
franc
Anmeldungsdatum: 22. Juni 2009
Beiträge: 163
|
spaceduck schrieb: Hallo, ich habe ein kleines Problem mit Postfix bei dem ich nicht weiterkomme...
Wenn ich meinen Server reboote, dann startet Postfix nicht ● postfix.service loaded active exited Postfix Mail Transport Agent
● postfix@-.service loaded failed failed Postfix Mail Transport Agent (instance -) Mailserver geht nicht, soweit klar...
ein "systemctl restart postfix.service" in der Shell, der Postfix Dienst startet fehlerfrei und alles funktioniert. postfix.service loaded active exited Postfix Mail Transport Agent
postfix@-.service loaded active running Postfix Mail Transport Agent (instance -) im syslog findet sich nur ein Eintrag:
postfix@.service: Start operation timed out. Terminating Hat wer eine Idee wo ich bei der Fehlersuche ansetzen kann?
Konntest du das lösen eigentlich? Ich habe vielleicht das selbe Problem: Postfix startet nach Reboot nicht von alleine
|
spaceduck
(Themenstarter)
Anmeldungsdatum: 4. Juli 2020
Beiträge: 6
|
Ja, konnte ich lösen. das Problem war bei mir eindeutig: Zu wenig RAM!
Der Rechner war mit dem vorhanden Setup und 4GB RAM völlig am Limit. Ein Upgrade auf 16GB und alles funktionierte. Das ganze war auch reproduzierbar.
|
franc
Anmeldungsdatum: 22. Juni 2009
Beiträge: 163
|
spaceduck schrieb: Ja, konnte ich lösen. das Problem war bei mir eindeutig: Zu wenig RAM!
Der Rechner war mit dem vorhanden Setup und 4GB RAM völlig am Limit. Ein Upgrade auf 16GB und alles funktionierte. Das ganze war auch reproduzierbar.
Danke für die schnelle Antwort!!!
Komisch, ich hab eigentlich 12 GB RAM: Root-Server L SATA v6
Virtualisierungstechnik: KVM
Prozessor: Intel®Xeon® E5-26xxV3 (min. 2,3 GHz je Kern)
RAM: 12 GB DDR4
CPU-Kerne: 4 dediziert
12 müssten doch auf jeden Fall reichen. top zeigt mir im Moment: top - 10:28:44 up 9:39, 1 user, load average: 0,00, 0,00, 0,01
Tasks: 217 gesamt, 1 laufend, 170 schlafend, 0 gestoppt, 0 Zombie
%CPU(s): 0,3 be, 0,2 sy, 0,0 ni, 99,3 un, 0,0 wa, 0,0 hi, 0,2 si, 0,0 st
KiB Spch : 12296260 gesamt, 2856544 frei, 2391568 belegt, 7048148 Puff/Cache
KiB Swap: 975868 gesamt, 975868 frei, 0 belegt. 9544568 verfü Spch
...
|
spaceduck
(Themenstarter)
Anmeldungsdatum: 4. Juli 2020
Beiträge: 6
|
Wenn ich mir so die load average anschaue muss das bei Dir in der Tat ein anderes Problem sein.
|
Newubunti
Anmeldungsdatum: 16. Februar 2008
Beiträge: 5139
|
Hallo, wenn sich ein Service nach dem Neustart problemlos manuell starten lässt, dann sollte man auch immer systemd im Hinterkopf haben - Stichworte After etc.. Das merkt man dann in der Regel auch daran, dass der Server länger zum Starten oder Herunterfahren braucht oder beides zusammen. Schau mal, ob systemd-analyze Dich diesbezüglich weiter bringt. Wenn nicht kannst Du auch einfach mal probieren postfix.serice nach etwas starten zu lassen, von dem Du Dir einigermaßen sicher bist, dass es erst ziemlich am Ende gestartet wird. LG,
Newubunti
|
franc
Anmeldungsdatum: 22. Juni 2009
Beiträge: 163
|
Newubunti schrieb:
wenn sich ein Service nach dem Neustart problemlos manuell starten lässt, dann sollte man auch immer systemd im Hinterkopf haben - Stichworte After etc..
Kann es daran liegen, dass Postfix noch von vor der Units-Zeit kommt und der Start in rc.d (mit den Runleveln und so) gemacht wird?
Ich hab Postfix auf dem Server seit 8.04 laufen und ich erinnere mich nicht, dass ich jemals was an den Startskripts geändert hätte.
Jedenfalls steht postfix in den runleveln /etc/rc(2-5).d und ist dort zum Starten (S07postfix) nach /etc/init.d/postfix verlinkt.
Units sind doch erst ab Ubuntu 15 wenn ich es richtig gelesen habe...
|
Newubunti
Anmeldungsdatum: 16. Februar 2008
Beiträge: 5139
|
franc schrieb: Units sind doch erst ab Ubuntu 15 wenn ich es richtig gelesen habe...
Ja, das stimmt.
Kann es daran liegen, dass Postfix noch von vor der Units-Zeit kommt und der Start in rc.d (mit den Runleveln und so) gemacht wird?
Ich hab Postfix auf dem Server seit 8.04 laufen und ich erinnere mich nicht, dass ich jemals was an den Startskripts geändert hätte.
Jedenfalls steht postfix in den runleveln /etc/rc(2-5).d und ist dort zum Starten (S07postfix) nach /etc/init.d/postfix verlinkt.
Units sind doch erst ab Ubuntu 15 wenn ich es richtig gelesen habe...
Ich kann zu so einer Situation nichts sagen, weil ich persönlich Server-Dienste erst so richtig seit systemd nutze bzw. weil ich bei mir konsequent auf systemd umgestellt habe. Bei Deinem System stellt sich für mich die Frage, ob da wirklich vollständig alles noch unter init.d läuft oder ob und was da inzwischen eventuell auch auf systemd läuft? Das Symptom an sich würde ich aber auf alle Fälle am ehesten darauf zurückführen, dass postfix hier während des Systemstarts zu einem Zeitpunkt zu starten versucht, zu welchem ein dafür vorausgesetzter Dienst noch fehlt. Wie Du das jetzt in Deinem Fall genau analysierst, da bin ich aber wie gesagt raus. Da müssen sich ältere Server-Hasen hier äußern, die so ein Upgrade-zu-Uprgrade über zig Jahre über den Wechsel von init.d zu systemd schon bewerkstelligt haben und die init.d beherrschen. Problem beim Upgrade generell ist halt auch immer, dass Umstellungen für die Komponenten, die zur Standard-Installation gehören relative problemfrei auf etwas neues gehoben werden. Für selbst nachinstallierte Dienste muss man dann häufig noch etwas nachhelfen Hiermit kannst Du erst mal prüfen, ob bei Dir systemd überhaupt läuft:
pidof systemd && echo "systemd" || echo "kein systemd" systemd kann ja dann init.d-Kram starten und ich könnte mir vorstellen, dass das bei Dir der Fall ist. Wenn bei Dir systemd laufen sollte, dann könntest Du postfix aus init.d herausnehmen und dafür unter systemd "anlegen". Die dafür notwendigen unit Dateien liegen bei Dir eventuell schon vor und sind halt im Zweifel nicht aktiviert. Was gibt denn systemctl list-unit-files --type=service bei Dir aus? (falls systemd aktiv ist) LG,
Newubunti
|
franc
Anmeldungsdatum: 22. Juni 2009
Beiträge: 163
|
systemd lauft! [17.50.37][root@ew6:/etc#systemctl list-unit-files --type=service | grep post
postfix.service enabled
postfix@.service indirect
postfwd.service generated
postgrey.service generated Ich hab mich halt nie richtig mit systemd und init.d und die ganzen Startskripte auseinandergesetzt. Ist wohl jetzt der Moment ☺
|
Newubunti
Anmeldungsdatum: 16. Februar 2008
Beiträge: 5139
|
Ok, lass Dir mal systemctl status postfix.service anzeigen. In dieser Ausgabe sollte es eine Zeile geben, die mit Loaded: loaded ( beginnt. In der Klammer steht dann der Pfad zur Unit-Datei von postfix auf Deinem System. Den Inhalt der Unit-Datei bitte auch hier posten. Poste dann mal bitte noch die Ausgabe von systemd-analyze critical-chain Ja, mit systemd solltest Du Dich unbedingt auseinandersetzen. Ist vielleicht am Anfang ein bisschen viel und scheinbar unübersichtlich, ich finde aber dass das systemd konzeptionell sehr gut durchdacht und zudem auch schon in den manpages überdurchschnittlich gut dokumentiert ist. Am Anfang schockt vielleicht erst mal die Informationsfülle, aber IMO ist es nicht schwer zu verstehen. LG,
Newubunti
|
franc
Anmeldungsdatum: 22. Juni 2009
Beiträge: 163
|
#systemctl status postfix.service
● postfix.service - Postfix Mail Transport Agent
Loaded: loaded (/lib/systemd/system/postfix.service; enabled; vendor preset: enabled)
Active: active (exited) since Wed 2021-11-17 08:20:27 CET; 12h ago
Main PID: 31192 (code=exited, status=0/SUCCESS)
Tasks: 0 (limit: 4915)
CGroup: /system.slice/postfix.service
Nov 17 08:20:27 ew6.org systemd[1]: Starting Postfix Mail Transport Agent...
Nov 17 08:20:27 ew6.org systemd[1]: Started Postfix Mail Transport Agent. und: #cat /lib/systemd/system/postfix.service
[Unit]
Description=Postfix Mail Transport Agent
Conflicts=sendmail.service exim4.service
ConditionPathExists=/etc/postfix/main.cf
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/bin/true
ExecReload=/bin/true
[Install]
WantedBy=multi-user.target dann: #systemd-analyze critical-chain
The time after the unit is active or started is printed after the "@" character.
The time the unit takes to start is printed after the "+" character.
graphical.target @9min 28.182s
└─multi-user.target @9min 28.182s
└─webmin.service @8min 8.017s +1min 20.164s
└─denyhosts.service @7min 56.971s +11.041s
└─amavis.service @3min 10.154s +4min 46.813s
└─remote-fs.target @3min 10.149s
└─mnt-storagespace.mount @3min 3.475s +6.672s
└─network-online.target @3min 2.318s
└─network.target @3min 2.002s
└─networking.service @1min 33.181s +1min 28.819s
└─apparmor.service @50.594s +41.840s
└─local-fs.target @50.249s
└─local-fs-pre.target @50.249s
└─keyboard-setup.service @33.538s +16.708s
└─systemd-journald.socket @33.185s
└─system.slice @33.178s
└─-.slice @32.810s
Da sehe ich aber gar keine postfix-Unit.
Ich lese mir als nächstes mal die Manpage von systemd durch... Vielen Dank!
|
Newubunti
Anmeldungsdatum: 16. Februar 2008
Beiträge: 5139
|
Gibt es bei Dir eine /lib/systemd/system/postfix@.service? Die müsste so aussehen: [Unit]
Description=Postfix Mail Transport Agent (instance %i)
Documentation=man:postfix(1)
PartOf=postfix.service
Before=postfix.service
ReloadPropagatedFrom=postfix.service
After=network-online.target nss-lookup.target
Wants=network-online.target
[Service]
Type=forking
GuessMainPID=no
ExecStartPre=/usr/lib/postfix/configure-instance.sh %i
ExecStart=/usr/sbin/postmulti -i %i -p start
ExecStop=/usr/sbin/postmulti -i %i -p stop
ExecReload=/usr/sbin/postmulti -i %i -p reload
[Install]
WantedBy=multi-user.target Ändere die mal versuchsweise wie folgt ab - mache Dir am besten zuvor ein Backup von der Datei: [Unit]
Description=Postfix Mail Transport Agent (instance %i)
Documentation=man:postfix(1)
PartOf=postfix.service
Before=postfix.service
ReloadPropagatedFrom=postfix.service
#After=network-online.target nss-lookup.target
After=network-online.target
Wants=network-online.target
[Service]
Type=forking
GuessMainPID=no
ExecStartPre=/usr/lib/postfix/configure-instance.sh %i
ExecStart=/usr/sbin/postmulti -i %i -p start
ExecStop=/usr/sbin/postmulti -i %i -p stop
ExecReload=/usr/sbin/postmulti -i %i -p reload
[Install]
WantedBy=multi-user.target LG,
Newubunti
|