Discussion:
rsync (unterschiedliche Grössen)
(zu alt für eine Antwort)
Karsten Winkler
2010-11-13 07:54:07 UTC
Permalink
Hallo Jochen,

mit du -bs bekomme ich unterschiedliche Summen (ich denke der Krusader
benutzt genau diesen Befehl, weil ich die gleichen Summen erhalte)

Danke für Deinen Tipp
Darf ich fragen, wie ich die logische Grösse ermitteln und die
miteinander gespeicherten Daten in der logischen Grösse vergleichen
kann?
du -b
Bezüglich der "Schätzung" von du: diese Formulierung irritiert mich,
kommt aber auch entsprechen in der englischen manpage vor ("estimate").
Ich gehe davon aus, dass das seinen Ursprung in der Abweichung zwischen
Dateigröße und Platz im Dateisystem hat. Kannst Du, denke ich,
ignorieren.
Wurde eins Deiner Dateisysteme eventuell mit besonderen Optionen
bezüglich der Blockgröße erstellt? Gibt "tune2fs -l /dev/$device"
unterschiedliche Werte für die block size an (sofern es sich um ext234
handelt)?
J.
Karsten Winkler
2010-11-13 08:29:03 UTC
Permalink
Hallo Heiko,

ich sichere mit rsync z.B. zwei Verzeichnisse

Die Quelle etxt3 (interne Platte): /home/archiv/bilder
Das Ziel ext3 (externe Platte): /media/disk/archiv/bilder

Der Befehl du -bs folgende Ergebnisse:
Q: 10088995080
Z: 10089007368

mit dem Befehl rsync -avzin /home/archiv/bilder /media/disk/archiv/bilder/
erhalte ich eine TotalSize von 10088384776

Das ist nun schon eine dritte Grösse. Wie kann man die Beurteilen?

Freue mich auf Deine Antwort
Liebe Grüsse nach Dresden/Sachsen
Karsten
aus Rüti ZH
Hallo Zusammen,
ich benutze folgenden Befehl zur Sicherung (z. Zt. ohne --delete und
rsync -avz quelle ziel/
Bei der Datensicherung ist mir aufgefallen, dass bei rsync die Quelle
unterschiedlich gross ist als das Ziel; dies ist aber nicht immer der
Fall, oft ist die Anzahl der Bits aber auch zu 100% gleich. Die Anzahl
der Dateien und die Anzahl der Unterordner ist nach Beendigung von rsync
immer identisch.
Wie hast Du die Größen verglichen? Vergleichst Du logische oder
physikalische Größe? Letztere könnte schon unterschiedlich sein. Kannst
Du eine Veränderung der Quelle nach der Sicherung ausschließen? (Und
auch eine Veränderung des Ziels?)
Muss ich mir sorgen machen, dass doch nicht alle Daten vollständig
geschrieben wurden?
Ja.
Du könntest einen zweiten rsync-Lauf anstoßen, mal mit
rsync -avzin ...
Da bekommst Du dann sehr gut zu sehen, wer noch warum gesynct werden
will (ohne es wirklich zu tun). Und dann kannst Du nach Erklärungen
suchen. Wenn rsync dann immer noch der Meinung ist, daß nichts zu tun
ist, obwohl Deine Files unterschiedliche logische Größe haben, dann hast
Du ein Problem.
Heiko Schlittermann
2010-11-13 22:32:08 UTC
Permalink
Post by Karsten Winkler
Hallo Heiko,
ich sichere mit rsync z.B. zwei Verzeichnisse
Die Quelle etxt3 (interne Platte): /home/archiv/bilder
Das Ziel ext3 (externe Platte): /media/disk/archiv/bilder
Q: 10088995080
Z: 10089007368
Moment - Du vergleichst hier die Summe der Objekte unterhalb des
Verzeichnisses bilder/?

Probier doch mal folgendes, *lokal* in einem leeren Verzeichnis.


mkdir -p a/b
rsync -av a x
du -bs ax

Und Du wirst eine Differenz feststellen. Jedenfalls bei mir sind die
Ausgaben unterschiedlich!

Warum? „du -bs XXX“ liefert die Gesamtgröße aller Objekte unterhalb von
XXX, wenn XXX ein Verzeinis ist. Die Betonung liegt auf *Objekte*. Files
sind mit Sicherheit ebenso groß wie vorher. Aber Ordner? In meinem
kleinen Beispiel oben siehst Du, daß es nicht so ist.

Bei Dir ist das Original größer als das Ziel, in meinem Beispiel ist es
umgekehrt. Ein anderes Beispiel:

mkdir a
ls -ld a
mkdir a/{1..1000}
ls -ld a
rmdir a/*
ls -ld a

Die ErklÀrung Ìberlasse ich jetzt erstmal Dir, ich mache Feierabend.
Wenn Du's nicht rausfindest, sag' Bescheid.
--
Heiko :: dresden : linux : SCHLITTERMAN.de
GPG Key 48D0359B : 3061 CFBF 2D88 F034 E8D2 7E92 EE4E AC98 48D0 359B
Karsten Winkler
2010-11-13 08:36:08 UTC
Permalink
Hallo,
"ls -l" liefert die logische Größe, mit stat(1) kann man das auch
ermitteln und sich eine schöne Ausgabe zusammenbauen, oder auch mit
find(1) und der Ausgabeoperation -printf.
diff -u \
<(cd DIR-A && find . -type f -printf '%p %s\n') \
<(ssh OTHER "cd DIR-B && find . -type f -printf '%p %s\n'")
Zum Vergleichen kannst Du natürlich auch wieder rsync nehmen. Aber natürlich könnte das
ja wieder die selben Fehler machen. Um sicher zu sein, könntest Du
Prüfsummen vergleichen (kann auch rsync mit "-c").
cd DIR-A && md5sum -c <(ssh OTHER "cd DIR-B && find -type f -exec md5sum {} +")
Mit den Befehlen kam ich gar nicht klar ... :-(...
Es gab eine Liste mit fehlenden Dateien aus, die aber definitiv
vorhanden sind....
Loading...