aliases.db wird alle 2 Minuten neu geschrieben.

bfal

Member
Sep 28, 2009
19
2
23
Hallo zusammen,

Ich teste gerade ein Cluster aus zwei Nodes und da ist mir aufgefallen das auf dem zweiten Node, also nicht dem Master, alle 2 Minuten die /etc/aliases.db neu geschrieben wird und Postfix somit alle 2 Minuten die aliases neu einliest. Im Prinzip immer wenn der pmgmirror Prozess startet.

Code:
Dec  8 10:05:56 mx2 postfix/smtpd[500137]: table hash:/etc/aliases(0,lock|fold_fix|utf8_request) has changed -- restarting
Dec  8 10:05:56 mx2 postfix/smtpd[500138]: table hash:/etc/aliases(0,lock|fold_fix|utf8_request) has changed -- restarting
Dec  8 10:07:48 mx2 postfix/smtpd[501682]: table hash:/etc/aliases(0,lock|fold_fix|utf8_request) has changed -- restarting
Dec  8 10:07:48 mx2 postfix/smtpd[501681]: table hash:/etc/aliases(0,lock|fold_fix|utf8_request) has changed -- restarting
Dec  8 10:09:40 mx2 postfix/smtpd[501851]: table hash:/etc/aliases(0,lock|fold_fix|utf8_request) has changed -- restarting
Dec  8 10:09:50 mx2 postfix/smtpd[501854]: table hash:/etc/aliases(0,lock|fold_fix|utf8_request) has changed -- restarting
Dec  8 10:12:11 mx2 postfix/smtpd[502071]: table hash:/etc/aliases(0,lock|fold_fix|utf8_request) has changed -- restarting
Dec  8 10:12:11 mx2 postfix/smtpd[502986]: table hash:/etc/aliases(0,lock|fold_fix|utf8_request) has changed -- restarting
Dec  8 10:12:11 mx2 postfix/smtpd[503005]: table hash:/etc/aliases(0,lock|fold_fix|utf8_request) has changed -- restarting
Dec  8 10:13:44 mx2 postfix/smtpd[503615]: table hash:/etc/aliases(0,lock|fold_fix|utf8_request) has changed -- restarting
Dec  8 10:15:41 mx2 postfix/smtpd[503776]: table hash:/etc/aliases(0,lock|fold_fix|utf8_request) has changed -- restarting
Dec  8 10:15:41 mx2 postfix/smtpd[504718]: table hash:/etc/aliases(0,lock|fold_fix|utf8_request) has changed -- restarting
Dec  8 10:15:41 mx2 postfix/smtpd[504708]: table hash:/etc/aliases(0,lock|fold_fix|utf8_request) has changed -- restarting
Dec  8 10:15:41 mx2 postfix/smtpd[503780]: table hash:/etc/aliases(0,lock|fold_fix|utf8_request) has changed -- restarting

Die /etc/aliases verändert sich aber nicht.

Ist das verhalten so korrekt und gewollt?
 

Stoiko Ivanov

Proxmox Staff Member
Staff member
May 2, 2018
6,173
862
148
Ist das verhalten so korrekt und gewollt?
/etc/aliases wird nicht innerhalb des clusters synchronisiert - was allerdings passiert, ist das bei einem postfix reload `newaliases` ausgeführt wird.
Soweit ich mich erinnere führt das aber nicht zum restart der smtpd prozesse (wenn sich nichts geändert hat)

Wie sind denn die timestamps von /etc/aliases auf den jeweiligen systemen:
ls -la /etc/aliases*

und steht irgendetwas außergewöhnliches in /etc/aliases (wenn möglich bitte mit möglichst wenig Anonymisierung hier posten)?
 

bfal

Member
Sep 28, 2009
19
2
23
Danke, für die Antwort. Anbei die Infos.

MASTER:
-----------------------
root@mx1.isrunning.de ~ # ls -la /etc/aliases*
-rw-r--r-- 1 root root 79 30. Nov 13:36 /etc/aliases -rw-r--r-- 1 root root 12288 7. Dez 12:17 /etc/aliases.db

root@mx1.isrunning.de ~ # cat /etc/aliases
# See man 5 aliases for format postmaster: root logcheck: root clamav: root
-----------------------


NODE1:
-----------------------
root@mx2.isrunning.de ~ # ls -la /etc/aliases*
-rw-r--r-- 1 root root 79 5. Dez 16:37 /etc/aliases -rw-r--r-- 1 root root 12288 9. Dez 11:17 /etc/aliases.db

root@mx2.isrunning.de ~ # cat /etc/aliases
# See man 5 aliases for format postmaster: root logcheck: root clamav: root
-----------------------

Beide Systeme wurden auf einem minimalen Debian installiert. Nur auf dem Node2 wird die aliases.db alle zwei Minuten neu geschrieben.
Was ich noch vergessen habe zu erwähnen. Stoppe ich den pmgmirror Process ist ruhe. Dann findet keine Aktualisierung mehr statt.
Daher kam meine Frage ob das normal sei. Wenn ein newalias ausgelöst wird wäre das zumindest eine Erklärung. Die Frage wäre dann jedoch warum dies so häufig geschieht.
 

Stoiko Ivanov

Proxmox Staff Member
Staff member
May 2, 2018
6,173
862
148
Beide Systeme wurden auf einem minimalen Debian installiert. Nur auf dem Node2 wird die aliases.db alle zwei Minuten neu geschrieben.
newaliases wird auch bei jedem clustersync ausgeführt - allerdings führt das hier zumindest nicht zum neustart der postfix/smtpd Prozesse (bzw. auch nicht zu der geposteten Fehlermeldung)

welche pmgversion läuft denn (`pmgversion -v`) - und auf welchem Debian wurde es installiert?
 

bfal

Member
Sep 28, 2009
19
2
23
Es ist auf beiden Systemen ein aktuelles Debian 11.1.

Master:
Code:
pmgversion -v
proxmox-mailgateway: 7.1-1 (API: 7.1-1/7d5cde4b, running kernel: 5.13.19-2-pve)
pmg-api: 7.1-1
pmg-gui: 3.1-1
pve-kernel-helper: 7.1-6
pve-kernel-5.13: 7.1-5
pve-kernel-5.13.19-2-pve: 5.13.19-4
pve-kernel-5.13.19-1-pve: 5.13.19-3
clamav-daemon: 0.103.3+dfsg-0+deb11u1
ifupdown: residual config
ifupdown2: 3.1.0-1+pmx3
libarchive-perl: 3.4.0-1
libjs-extjs: 7.0.0-1
libjs-framework7: 4.4.7-1
libproxmox-acme-perl: 1.4.0
libproxmox-acme-plugins: 1.4.0
libpve-apiclient-perl: 3.2-1
libpve-common-perl: 7.0-14
libpve-http-server-perl: 4.0-4
libxdgmime-perl: 1.0-1
lvm2: not correctly installed
pmg-docs: 7.1-1
pmg-i18n: 2.6-2
pmg-log-tracker: 2.2.0-1
postgresql-13: 13.5-0+deb11u1
proxmox-mini-journalreader: 1.3-1
proxmox-spamassassin: 3.4.6-4
proxmox-widget-toolkit: 3.4-4
pve-firmware: 3.3-3
pve-xtermjs: 4.12.0-1

Node:
Code:
pmgversion -v
proxmox-mailgateway: 7.1-1 (API: 7.1-1/7d5cde4b, running kernel: 5.13.19-2-pve)
pmg-api: 7.1-1
pmg-gui: 3.1-1
pve-kernel-helper: 7.1-6
pve-kernel-5.13: 7.1-5
pve-kernel-5.13.19-2-pve: 5.13.19-4
clamav-daemon: 0.103.3+dfsg-0+deb11u1
ifupdown: 0.8.36
libarchive-perl: 3.4.0-1
libjs-extjs: 7.0.0-1
libjs-framework7: 4.4.7-1
libproxmox-acme-perl: 1.4.0
libproxmox-acme-plugins: 1.4.0
libpve-apiclient-perl: 3.2-1
libpve-common-perl: 7.0-14
libpve-http-server-perl: 4.0-4
libxdgmime-perl: 1.0-1
lvm2: 2.03.11-2.1
pmg-docs: 7.1-1
pmg-i18n: 2.6-2
pmg-log-tracker: 2.2.0-1
postgresql-13: 13.5-0+deb11u1
proxmox-mini-journalreader: 1.3-1
proxmox-spamassassin: 3.4.6-4
proxmox-widget-toolkit: 3.4-4
pve-firmware: 3.3-3
pve-xtermjs: 4.12.0-1

Führe ich auf dem mx1 (Master) per Hand ein newaliases aus wird die /etc/aliases.db neu geschrieben aber postfix meldet kein "has changed -- restarting". Nur wenn ich wirklich die /etc/aliases ändere, also z.B. eine Zeile hinzufügen, und dann ein newaliases ausführe meldet Postfix nach ein paar Sekunden "..has changed -- restarting".

Auf dem mx2 (Node) ist es tatsächlich scheinbar so das sobald ich ein newaliases ausführe, er ein "has changed" meldet egal ob sich was geändert hat oder nicht. Auch ein stumpfe löschen der /etc/aliases.db und neu erzeugen ändert nichts.
Das ausführen von newaliases löst es aus aber scheinbar erkennt Postfix hier immer eine Änderung die es nicht gab.

Ich glaube ich werde nochmal ein Testsystem auf die gleiche Weise aufsetzen und schauen ob ich das dort reproduzieren kann.

Eine Frage stellt sich mir aber noch. Warum wird denn immer ein Newaliases vom pmgmirror aufgerufen wenn das Cluster die Datei /etc/aliases nicht synced?
 

Stoiko Ivanov

Proxmox Staff Member
Staff member
May 2, 2018
6,173
862
148
Führe ich auf dem mx1 (Master) per Hand ein newaliases aus wird die /etc/aliases.db neu geschrieben aber postfix meldet kein "has changed -- restarting". Nur wenn ich wirklich die /etc/aliases ändere, also z.B. eine Zeile hinzufügen, und dann ein newaliases ausführe meldet Postfix nach ein paar Sekunden "..has changed -- restarting".
ok - ich habs jetzt nachstellen können (hatte zuvor vergessen, dass postfix vieles erst macht, wenn es getan werden muss - in diesem Fall die timestamps vergleichen erst wenn wieder eine mail/connection reinkommt.

Insofern ist das weitere Testsystem glaube ich nicht notwendig - sorry für die Umstände!


Eine Frage stellt sich mir aber noch. Warum wird denn immer ein Newaliases vom pmgmirror aufgerufen wenn das Cluster die Datei /etc/aliases nicht synced?
der clustersync baut nachher nochmal die postfix config neu (um sicherzustellen, dass diese sich nicht geändert hat) - in diesem config neu bauen ist auch der Aufruf auf `newaliases` hardgecodet drinnen (und zumindest seit 4 Jahren in der Form da) - nehme an, dass die ursprüngliche Motivation war, dass ein newaliases eben normalerweise keine Probleme macht, wenig kostet.

Derzeit wirkt es für mich eher wie ein kosmetisches Problem - mit wenig bis gar keinen Auswirkungen auf den Mailflow (bitte korrigieren falls ich was übersehe!)
Wenn gewünscht kann auch ein Enhancement Request in unserem bugzilla aufgemacht werden: https://bugzilla.proxmox.com - aber sofern es kosmetisch ist wird es nicht so weit oben auf der Prioritätenliste landen, das zu ändern.

Vielen Dank für den Report in jedem Fall!
 

bfal

Member
Sep 28, 2009
19
2
23
Ah, vielen Dank für die Rückmeldung. Nein, ich hatte das jetzt nicht unbedingt als Fehler verstanden. Ich wollte eigentlich ja nur wissen ob dies ein normales Verhalten vom PMG ist da ich das sonst mit Postfix so nicht kenne. Nebeneffekte sind mir jetzt durch das häufige neu Laden nicht aufgefallen. Aber ich werde da am Wochenende noch einmal genauer testen mit größerem Maildurchsatz.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get your own in 60 seconds.

Buy now!