Probleme mit rsync

Status
Für weitere Antworten geschlossen.

mapero

Benutzer
Mitglied seit
21. Feb 2011
Beiträge
33
Punkte für Reaktionen
0
Punkte
0
Hallo.

Ich habe schon länger ein Skript auf meinem Rechner, dass über den NetworkManager ausgelöst wird. Es synchronisiert mittels rsync mein Home-Verzeichnis auf meine DS211j. Seit einigen Tagen, ich vermute seit ich auf 4.1 aktualisiert habe funktioniert rsync nicht mehr, weder das Skript noch manuell. Ist mir leider erst gestern aufgefallen.
Der Befehl sieht auf meinem Rechner folgendermaßen aus:
Rich (BBCode):
/bin/rsync -azP --delete --bwlimit=2000 -e "ssh -i /home/jochen/.ssh/id_rsa" /home/jochen jochen@miraculix:/volume1/homes/jochen/Sync/asterix

Selbst ein einfaches rsync -ae ssh /home/jochen/XYZ jochen@miraculix:/volume1/homes/jochen/Blub funktioniert nicht mehr.
Die Fehlermeldung ist immer die gleiche:
Rich (BBCode):
sending incremental file list
ERROR: module is read only
rsync error: syntax or usage error (code 1) at main.c(1034) [Receiver=3.0.8]
rsync: connection unexpectedly closed (9 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(605) [sender=3.0.9]

Auf der DS /var/log/messages ist folgendes zu finden:
Rich (BBCode):
Sep  8 16:04:04 rsync: 1027 don't have write permission to /volume1/homes/jochen/Sync/asterix

Der Nutzer jochen hat aber natürlich volle Schreibrechte in diesem Verzeichnis.

Hat jemand eine Idee?

Bin mit meinem Latein am Ende.

Danke.
Jochen
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
12.008
Punkte für Reaktionen
2.700
Punkte
423
Auf der DS /var/log/messages ist folgendes zu finden:
Rich (BBCode):
Sep  8 16:04:04 rsync: 1027 don't have write permission to /volume1/homes/jochen/Sync/asterix

Der Nutzer jochen hat aber natürlich volle Schreibrechte in diesem Verzeichnis.
Hat User jochen die UserID 1027?
Was steht in /etc/rsync.conf? Hattest du unter <4.1 was dran geändert?

Gruß Benares
 

mapero

Benutzer
Mitglied seit
21. Feb 2011
Beiträge
33
Punkte für Reaktionen
0
Punkte
0
Danke für die Antwort. Ja jochen = uid 1027.
Geändert hatte ich schon länger nichts mehr. Habe gestern die Log-Dateien meines Skript mal gechecked und festgestellt, dass es seit ein paar Tagen nicht mehr läuft. Das einzige was ich etwa in diesem Zeitraum gemacht hatte, war ein Update von 4.1-Beta auf 4.1.

rsyncd.conf
Code:
#motd file = /etc/rsyncd.motd
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
use chroot = no
read only = no
[NetBackup]
path = /var/services/NetBackup
comment = Network Backup Share
uid = root
gid = root
read only = no
list = yes
charset = utf-8
auth users = root
secrets file = /etc/rsyncd.secrets

Daran habe ich allerdings nichts geändert, erst nachdem es nicht mehr funktionierte habe ich bei "log file" das Kommentar entfernt und "read only = no" eingefügt.
Soweit ich weiß, ist diese Datei aber nur von belang, wenn ich statt ssh den rsync-Daemon rsyncd benutze. Was ja eigentlich nicht der Fall ist.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
was passiert denn wenn du statt rsync via ssh nur eine ssh Verbindung aufbaust und ein Kommando absetzt? z.B.
Code:
[COLOR=#333333]ssh -i /home/jochen/.ssh/id_rsa jochen@miraculix touch /volume1/homes/jochen/Sync/asterix/testfile
[/COLOR]
hast du danach das testfile?
 

Benares

Benutzer
Sehr erfahren
Mitglied seit
27. Sep 2008
Beiträge
12.008
Punkte für Reaktionen
2.700
Punkte
423
Ich denke schon, dass auch bei ssh der rsyncd mit im Spiel ist und damit auch die rsyncd.conf, bin aber nicht so der rsync-Guru.
Ich hab leider auch keine 4.0er mehr, damit ich schauen könnte, wie es dort war.
Auf einem anderen NAS (nicht DS) ist ausserhalb der Abschnitte (also oben) auch nochmal uid,gid drin, also
Code:
uid = root
gid = root
use chroot = no
pid file = /var/run/rsyncd.pid

[...]
Probier mal, ob das was ändert.

Gruß Benares
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
Ich denke schon, dass auch bei ssh der rsyncd mit im Spiel ist und damit auch die rsyncd.conf, bin aber nicht so der rsync-Guru.
afaik wird die Datei wirklich nur dann benutzt wenn man rsyncd auf der Gegenseite nutzt. Im Falle des topicstarters rsync via ssh kommt die ned zum Tragen. Sonst würden alle meine Backups (rsync via ssh) ned funzen und das hätte ich bestimmt mal bemerkt :)
 

mapero

Benutzer
Mitglied seit
21. Feb 2011
Beiträge
33
Punkte für Reaktionen
0
Punkte
0
was passiert denn wenn du statt rsync via ssh nur eine ssh Verbindung aufbaust und ein Kommando absetzt? z.B.
Code:
[COLOR=#333333]ssh -i /home/jochen/.ssh/id_rsa jochen@miraculix touch /volume1/homes/jochen/Sync/asterix/testfile
[/COLOR]
hast du danach das testfile?

Japp. Hat ohne Problem funktioniert.

Code:
jochen@asterix:~$ ssh -i /home/jochen/.ssh/id_rsa jochen@miraculix touch /volume1/homes/jochen/Sync/asterix/testfile
jochen@asterix:~$ ssh miraculix
BusyBox v1.16.1 (2012-08-30 00:05:10 CST) built-in shell (ash)
Enter 'help' for a list of built-in commands.

miraculix> ls /volume1/homes/jochen/Sync/asterix/ -lah
drwxr-xr-x 3 jochen users 4.0K Sep  8 17:02 .
drwxr-xr-x 3 jochen users 4.0K Aug 18 15:47 ..
-rw-r--r-- 1 jochen users    0 Sep  8 17:02 testfile
miraculix>
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
okay dann sollten die Rechte also wirklich passen. Was passiert denn wenn du den rsync via ssh machst, aber diesmal mit dem User root auf miraculix? Wenn der auch den Fehler bezüglich mangelnder Rechte bekommt, stimmt echt was mit rsync ned
 

mapero

Benutzer
Mitglied seit
21. Feb 2011
Beiträge
33
Punkte für Reaktionen
0
Punkte
0
Als root funktioniert es.

Edit: Ich habe ebenfalls rsync über das ipkg installiert. Kann es sein, dass es plötzlich dazwischen funkt? Hab dem /opt/bin/rsync jedoch einfach mal die x rechte entzogen. Hatte keine Auswirkungen. "Root" funktioniert immer noch, "jochen" nicht.
 
Zuletzt bearbeitet:

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
wenns mit root geht, dann würde ich das mit root machen :) Sonst könnte ich mir nur noch vorstellen, dass jochen auf miraculix das rsync-Kommando ned nutzen darf. wenn du dich als jochen auf miraculix anmeldest, kannst du dann das Kommando rsync normal nutzen?
 

mapero

Benutzer
Mitglied seit
21. Feb 2011
Beiträge
33
Punkte für Reaktionen
0
Punkte
0
Funktioniert.

Da SSH über das Internet offen ist, würd ich den root-user ungern dafür nutzen. Habe normal password aus und nur public key für bestimmte Nutzer. Werde noch ein bisschen recherchieren. Vll. find ich noch eine andere Lösung.
 

jahlives

Benutzer
Mitglied seit
19. Aug 2008
Beiträge
18.275
Punkte für Reaktionen
4
Punkte
0
root Login nur mit PublicKey ist sehr sicher, am besten gleich den SSH auf dem Server auf Cert-Login-only umstellen.
Wenn du es nicht als root machen willst, könntest du allenfalls probieren das rsync Binary suid zu setzen, ABER prüf zuerst ob rsync ned nur ein Link auf busybox ist. Wenn es nur ein Link ist und du den suid setzt, dann wäre die gesamte busybox auch suid und das wäre ein enormes Risiko
 

mapero

Benutzer
Mitglied seit
21. Feb 2011
Beiträge
33
Punkte für Reaktionen
0
Punkte
0
suid ist beim syno-rsync standardmäßig gesetzt und eine "eigenständige" binary.
 

petehild

Benutzer
Mitglied seit
17. Mrz 2011
Beiträge
443
Punkte für Reaktionen
0
Punkte
22
Ich habe das gleiche Problem, scheinbar wurde bei den Version ab DSM 4.1 in Sachen rsync etwas geändert.

rsync funktioniert nur als root oder wenn ich dem entsprechenden Nutzer Schreibrechte auf homes gebe. Ist für mich keine Lösung.
Hat noch jemand eine Idee, wie man als normaler user rsync zu seinem eigenen home-Ordner auf der DS nutzen kann?
 

petehild

Benutzer
Mitglied seit
17. Mrz 2011
Beiträge
443
Punkte für Reaktionen
0
Punkte
22
hab es jetzt mit der Option "Benutzerdefinierte rsync-Konfiguration verwenden" und einem eigenen Modul in der /etc/rsyncd.conf gelöst :)
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat