rsync vom Linux-Host auf fat32

7

Ich möchte mein Linux-basiertes NAS (kleine Dateien wie Picutres) auf einem angeschlossenen USB-Laufwerk mit FAT32 sichern. Dafür verwende ich gerne rsync.

Ich weiß, dass dies standardmäßig nicht richtig funktioniert. rsync synchronisiert die Dateien immer wieder. Ich habe diese Frage und Antworten gefunden: Wie kann ich rsync mit einem FAT-Dateisystem verwenden?

Aber selbst wenn ich die Option --modify-window=1und verwende --size-only, werden alle Dateien erneut verarbeitet. Das Protokoll sieht so aus, als ob rsync versucht, die Berechtigung / den Besitz für fat32 festzulegen, was fehlschlägt. rsync: chown "<filename>" failed: Operation not permitted (1)

Die Frage ist: Gibt es eine Möglichkeit, den Befehl "chown" zu deaktivieren?

//Bearbeiten:

Derzeit verwende ich den folgenden Befehl: rsync -a --modify-window=1 --size-only /data/ /mnt/backup/. &

Der Bndr
quelle

Antworten:

7

Verwenden Sie nur nicht die Optionen zum Synchronisieren von Eigentümer / Gruppe. Wenn Sie die Option --archive/ verwenden, -aschließt dies diese beiden ein. Geben Sie stattdessen die Flags einzeln an und lassen Sie diese weg. Auf der Manpage finden Sie eine Liste der --archiveImplikationen.

David Spillett
quelle
5
Vielen Dank. -asteht für das -rlptgoDBetrachten der Manpages, daher muss ich pfür Berechtigungen gfür Gruppen und ofür das Eigentum entfernen . So -rltDsind die Optionen, die ich verwenden muss. Und es funktioniert.
Die Bndr
In meinem Fall heißt es, dass Symlinks auch auf FAT nicht unterstützt werden und daher ebenfalls -lausgeschlossen werden müssen
Dima Lituiev
2

Ich habe lange Zeit erfolglos versucht, herauszufinden, wie ich verhindern kann, dass rsync jede Datei jedes Mal kopiert, ohne Erfolg. Aber ich bin gerade über die Antwort gestolpert. Es handelt sich um ein FAT32-Problem mit kurzen Dateinamen. Anscheinend konvertiert Linux sie standardmäßig in Kleinbuchstaben, was die Fähigkeit von rsync beeinträchtigt, zu erkennen, dass es sich um dieselbe Datei auf der Quelle und dem Ziel handelt.

Die Lösung besteht darin, das FAT32-Gerät mit der Option "Kurzname = gemischt" zu mounten. Ich glaube, Sie müssen auch den Zeichensatz utf8 verwenden, z. B. 'iocharset = utf8'. Führen Sie dann rsync mit den folgenden Parametern aus: -rtv --modify-window = 1

Unter Debian mit Trinity kann ich mit der rechten Maustaste auf das Symbol der FAT32-Partition auf dem Desktop klicken, Eigenschaften / Mounten, Kurznamen auf gemischt setzen und sicherstellen, dass UTF-8-Zeichensatz aktiviert ist. Hoffentlich gibt es eine Möglichkeit, diese als Standardeinstellungen für alle FAT32-Partitionen festzulegen, aber ich habe noch nicht danach gesucht.

Hinterwäldler
quelle
Ich hatte dieses Problem nicht, weil ich später von FAT32 zu NTFS gewechselt bin. Aber Ihre Antwort ist ein interessanter Punkt. Vielen Dank! +1
The Bndr