[gelöst] Seltsames Verhalten von rsync nach Upgrade auf Bullseye / read-only filesystem

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
pgs
Beiträge: 123
Registriert: 22.07.2004 14:30:40

[gelöst] Seltsames Verhalten von rsync nach Upgrade auf Bullseye / read-only filesystem

Beitrag von pgs » 03.05.2023 16:36:04

Hallo, ich betreibe seit Jahren ein Serverpärchen (btw: Uptime von 99,982% seit 2018!) , zwischen denen per manuell aufgerufenem rsync eine Synchronisation von Dateien stattfindet. Nach dem Ändern einer oder mehrerer Dateien in einem Verzeichnis auf der Maschine 10.0.0.1 ruft der Anwender "Anwender" ein Skript auf, in dem steht:

Code: Alles auswählen

#!/bin/sh
rsync --chown=root:root -vptEz --password-file=/etc/rsyncd.secrets /home/Anwender/dhcp/*.conf dhcp-rsync@10.0.0.2::dhcp_transfer
Dieser Befehl transferiert alle geänderten Dateien im Verzeichnis zur anderen Maschine 10.0.0.2. Das Passwort steht im Klartext in der rsyncd.secrets und ist rechtemäßig abgesichert.

Die Maschine 10.0.0.2 stellt den rsync-share bereit:

Code: Alles auswählen

#/etc/rsyncd.conf
uid = root
pid file = /var/run/rsyncd.pid
use chroot = no
transfer logging = true
log format = %h %o %f %l %b
log file = /var/log/rsyncd.log
secrets file = /etc/rsyncd.secrets

[dhcp_transfer]
path = /etc/dhcp/conf.rsync
read only = no
auth users = dhcp-rsync
hosts allow = 10.0.0.1
Das Passwort steht im Klartext in der rsyncd.secrets und ist rechtemäßig abgesichert.

So, das ganze hat nun seit Stretch funktioniert. Der User ändert was an einer der Dateien, läßt das Skript ablaufen und die Dateien werden von 10.0.0.1 an 10.0.0.2 übertragen. Nach dem Upgrade auf Bullseye funktioniert das aber nicht mehr. Es kommt zu folgendem Fehler:

Code: Alles auswählen

Number of files: 4 (reg: 4)
Number of created files: 0
Number of deleted files: 0
Number of regular files transferred: 0
Total file size: 80,260 bytes
Total transferred file size: 0 bytes
Literal data: 0 bytes
Matched data: 0 bytes
File list size: 0
File list generation time: 0.001 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 109
Total bytes received: 12

sent 109 bytes  received 12 bytes  242.00 bytes/sec
total size is 80,260  speedup is 663.31
dhcp_vlan_1.conf
dhcp_vlan_2.conf
dhcp_vlan_3.conf
dhcp_vlan_4.conf
rsync: [receiver] mkstemp ".dhcp_vlan_1.conf.B0mbE1" (in dhcp_transfer) failed: Read-only file system (30)
rsync: [receiver] mkstemp ".dhcp_vlan_2.conf.FbZzT4" (in dhcp_transfer) failed: Read-only file system (30)
rsync: [receiver] mkstemp ".dhcp_vlan_3.conf.vyzli2" (in dhcp_transfer) failed: Read-only file system (30)
rsync: [receiver] mkstemp ".dhcp_vlan_4.conf.nFe4e2" (in dhcp_transfer) failed: Read-only file system (30)

sent 9,694 bytes  received 548 bytes  20,484.00 bytes/sec
total size is 80,260  speedup is 7.84
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1333) [sender=3.2.3]
Da habe ich erstmal blöde geschaut, denn meine Filesystems sind a) in Ordnung und b) nicht ro gemountet. Ich habe dann ewig rumprobiert und auch die Rechte für den Share mal ganz aufgemacht, aber das hat alles nicht geholfen. Was letztendlich half: Den rsync-share auf dem Zielsystem 10.0.0.2 an einen anderen Ort zu legen, also raus aus /etc:

Code: Alles auswählen

#/etc/rsyncd.conf
uid = root
pid file = /var/run/rsyncd.pid
use chroot = no
transfer logging = true
log format = %h %o %f %l %b
log file = /var/log/rsyncd.log
secrets file = /etc/rsyncd.secrets

[dhcp_transfer]
#path = /etc/dhcp/conf.rsync 
path = /srv/dhcp-rsync
read only = no
auth users = dhcp-rsync
hosts allow = 10.0.0.1
...und schon funktioniert es wieder. Aber ich verstehe nicht, was da los ist.

Ich habe dann aus Spaß alle Mountpoints durchprobiert:

Ziel /: funktioniert
Ziel /home: funktioniert
Ziel /tmp: funktioniert
Ziel /var: funktioniert
Ziel /var/log: funktioniert
Ziel /var/lib: funktioniert
und auch nochmal in Ziel /etc (was keinen eigenen Mountpoint hat): funktioniert nicht, Fehler s.o.

Ich komme mit meiner Änderung zwar zurecht, würde aber gerne verstehen, warum dieses Verhalten auftritt. Any ideas anyone?
Zuletzt geändert von pgs am 08.05.2023 15:00:57, insgesamt 1-mal geändert.

Benutzeravatar
MSfree
Beiträge: 10773
Registriert: 25.09.2007 19:59:30

Re: Seltsames Verhalten von rsync nach Upgrade auf Bullseye / read-only filesystem

Beitrag von MSfree » 03.05.2023 22:49:44

Dein Problem dürfte auf Debianapparmor zurückzuführen sein, das mindestens seit Bullseye fester Bestandteil von Debian ist. Apparmor schützt bestimmte Dateien und Verzeichnisse vor Manipulationen. Manipulationsversuche werden im Journal protokolliert, schau da einfach mal nach.

pgs
Beiträge: 123
Registriert: 22.07.2004 14:30:40

Re: Seltsames Verhalten von rsync nach Upgrade auf Bullseye / read-only filesystem

Beitrag von pgs » 05.05.2023 11:26:20

Ach... an eine Metasache habe ich auch schon entfernt gedacht. Danke für die Info, ich schaue mir das an.

Antworten