Ich habe eine SSHFS-Verbindung mit einem Remote-Dateisystem auf einem Linux-Server eingerichtet. Ich führe einen Rsync von meinem lokalen Server zum ftpfs-Dateisystem durch. Aufgrund der Art dieses Setups kann ich chown
im sshfs-Dateisystem nichts ausführen.
Wenn ich den Rsync-Vorgang durchführe, wird versucht, alle Dateien zu erkennen, nachdem sie übertragen wurden. Dies führt zu Chown-Fehlern, obwohl die Dateien einwandfrei übertragen werden.
Gibt es bei Rsync eine Möglichkeit, dem Programm mitzuteilen, dass es die Dateien nicht anzeigen soll? Wenn ich 1000 Dateien synchronisiere, bekomme ich ein Protokoll mit 1000 chown: permission denied (error 13)
Fehlern. Ich weiß, es schadet nichts, diese Fehler zu bekommen, da der Besitz der Dateien von der sshfs-Konfiguration selbst bestimmt wird. Aber es wäre schön, sie nicht zu bekommen.
-a --no-o --no-g
rsync -r --no-o --no-g /source/* /dest/
und mein Besitzer und eine Gruppe der Dateien am Ziel wurden immer noch entsprechend der Quelle geändert. Irgendwelche Ideen?Bestehen Sie
-o
keine der anderen Optionen, die dies implizieren.quelle
Verwenden Sie die
-a
Option nicht, da sie die-p
Option enthält, die die Berechtigungen beibehält. Für diese Situation-r
sollte das ausreichen.Weitere Infos finden Sie unter
man rsync
.quelle
-p
was ich vermeiden möchte? Das Eigentum unterscheidet sich von den Berechtigungen, richtig?Ich bin auf etwas Ähnliches gestoßen, bei dem
rsync
der Eigentümer und die Gruppe von Dateien und Verzeichnissen nicht von einem Remote-Server synchronisiert wurden. Zu korrigieren, kopierte ich über die/etc/shadow
,/etc/group
und/etc/passwd
Dateien.Als ich den folgenden
rsync
Befehl ausführte, funktionierte er dahingehend, dass Berechtigungen, symbolische Links und Eigentumsrechte erhalten blieben.Ich hatte SSH-Schlüssel eingerichtet, um passwortloses SSH zu verwenden.
quelle