rsync: kopiert statt abzugleichen

  1. lab

    lab Thread StarterMacUser Mitglied

    Mitglied seit:
    02.08.2006
    Beiträge:
    67
    Zustimmungen:
    3
    Hallo Unix-Kenner

    Durch dieses Forum motiviert habe ich mich etwas in UNIX eingearbeitet und schliesslich ein kleines Script erstellt, dass den Dokumente-Ordner zwischen meinem Mac und dem Laptop synchronisiert:

    Code:
    mkdir /Volumes/lab
    mount_afp -i afp://lab@Laptop.local/lab /Volumes/lab
    echo "Sync begonnen um:" >> $HOME/Library/Logs/sync.log
    date >> $HOME/Library/Logs/sync.log
    rsync -vauE /Users/lab/Documents/Dokumente/ /Volumes/lab/Documents/Dokumente/
    rsync -vauE /Volumes/lab/Documents/Dokumente/ /Users/lab/Documents/Dokumente/
    echo "Sync beendet um:" >> $HOME/Library/Logs/sync.log
    date >> $HOME/Library/Logs/sync.log
    echo "==========" >> $HOME/Library/Logs/sync.log
    umount /Volumes/lab
    Das Ganze funktioniert brav - ausser, dass es eine Datei jedesmal ganz kopiert, obwohl ich eigentlich die Update-Option gesetzt habe... Sollte hier nicht einfach Dateiname und Datum (-u) verglichen werden - und wenn identisch keine weitere Aktion unternommen werden (also nicht kopieren...). Wo liegt mein Denkfehler? :confused:

    Ausschnitte aus dem Terminalfenster:

    Code:
    A/B/C/D/file.psd
        33768356 100%    1.75MB/s    0:00:18  (147, 10.4% of 1815)
    
    Da wurde die ganze Datei kopiert...


    Code:
    sent 158003057 bytes  received 13260 bytes  1848144.06 bytes/sec
    total size is 296277691  speedup is 1.87
    
    Zu viele Daten wurden verschoben, oder? Mein Dokumentordner umfasst bloss 300MB

    Vielen Dank für Antworten!
     
  2. jlepthien

    jlepthienMacUser Mitglied

    Mitglied seit:
    05.04.2004
    Beiträge:
    4.858
    Zustimmungen:
    118
    Such mal im Forum nach dem Backup Thread. Da wird rsync Komplett behandelt und du musst nicht extra nen neuen Fred aufmachen ;)
    Die SuFu ist oben im Menu. Sheep hat den Thread erzeugt...
     
    jlepthien, 23.01.2007
  3. lab

    lab Thread StarterMacUser Mitglied

    Mitglied seit:
    02.08.2006
    Beiträge:
    67
    Zustimmungen:
    3
    Habe die Frage dort vor einiger Zeit gestellt und bisher keine Antwort erhalten, auch die Suche in den weiten des Internets hat keine Lösung gebracht. sheeps hervorragender Thread hat mich überhaupt erst auf den Geschmack gebracht...
     
  4. maceis

    maceisMacUser Mitglied

    Mitglied seit:
    24.09.2003
    Beiträge:
    16.696
    Zustimmungen:
    602
    rsync überträgt auch ohne den Schalter -u nur Dateien, die sich unterscheiden.
    Also bei mir funktioniert folgendes (hier mit kleinen Beispieldateien):
    Code:
    ls -l quelle/ ziel/
    quelle/:
    total 40
    -rw-r--r--   1 maceis  martin  21 29 Okt 17:58 file1
    -rw-r--r--   1 maceis  martin   7 29 Okt 17:57 file2
    -rw-r--r--   1 maceis  martin   0 29 Okt 17:53 file3
    -rw-r--r--   1 maceis  martin   7 29 Okt 17:58 file4
    -rw-r--r--   1 maceis  martin   0 24 Jan 05:31 file5
    -rw-r--r--   1 maceis  martin   0 24 Jan 05:31 file6
    -rw-r--r--   1 maceis  martin   7 29 Okt 17:59 file7
    -rw-r--r--   1 maceis  martin  11 29 Okt 17:59 file8
    
    ziel/:
    Jetzt füre ich rsync durch:
    Code:
    rsync -av quelle ziel 
    building file list ... done
    quelle/
    quelle/file1
    quelle/file2
    quelle/file3
    quelle/file4
    quelle/file5
    quelle/file6
    quelle/file7
    quelle/file8
    
    sent 569 bytes  received 180 bytes  1498.00 bytes/sec
    total size is 53  speedup is 0.07
    Ich verändere file1 und file2 und führe rsync erneut durch
    Code:
    touch quelle/file{1,2}
    
    rsync -av quelle ziel
    building file list ... done
    quelle/file1
    quelle/file2
    
    sent 288 bytes  received 60 bytes  696.00 bytes/sec
    total size is 53  speedup is 0.15
    Und siehe da; wie erwartet werden nur geänderte Dateien übertragen.
     
    maceis, 24.01.2007
  5. Tecalto

    TecaltoMacUser Mitglied

    Mitglied seit:
    13.05.2003
    Beiträge:
    86
    Zustimmungen:
    3
    Wenn der Schalter -E eingeschaltet ist kopiert er einiges mehr. Das konnte ich auch schon beobachten. Das sind dann irgendwelche ._-Dateien; soviel ich weiss ist dies der Ressource-Fork einer Datei. Wieso rsync dies auch bei nicht geänderten Dateien macht, ist mir schleierhaft und störrt mich.

    Zum Testen:
    Code:
    rsync -vauE Documents/Anderes Desktop
    rsync -vauE Documents/Anderes Desktop
     
    Tecalto, 24.01.2007
  6. maceis

    maceisMacUser Mitglied

    Mitglied seit:
    24.09.2003
    Beiträge:
    16.696
    Zustimmungen:
    602
    Ach übrigens, weil ich's grad' seh'.
    Es geht auch sowas:
    Code:
    echo -e "Beendet: " `date +%d.%m.%y\ -\ %H:%M:%S` "\n----" >> $logfile
     
    maceis, 24.01.2007
  7. lab

    lab Thread StarterMacUser Mitglied

    Mitglied seit:
    02.08.2006
    Beiträge:
    67
    Zustimmungen:
    3
    Update von der Befehlszeilen-Front:

    Das Problem scheint mit dem -E-Schalter zusammenzuhängen. Wenn ich nämlich auf diese Option verzichte, wird nur kopiert, was sich verändert hat. Der Datenfluss umfasst blosse 26kb. Kaum schalte ich -E wieder ein, wird wieder jedesmal alles kopiert...? Mit -E sehe ich (wie zu erwarten), dass "extended" ._xyz-Dateien übertragen werden, aber eben auch die eigentlichen Dateien selbst.

    In man rsync steht, dass -E "extended attributes, resource forks, and ACLs" kopiert. Mit diesem zusätzlichen Wissen google ich und stosse bald auf Folgendes (Mailing-List, also nicht Apple-offiziell):

    Code:
    "rsync status in 10.4.7
    - preserves ACLs on files w/o Extended Attributes, yet mangles the ACL's private EA values
    - crashes copying files with both ACLs and Extended Attributes
    - fails to copy Extended Attributes, generates warning
    - fails to maintain creation dates, munges with modification date
    - fails to maintain BSD (chflag) flags
    - symlink ownerships are preserved
    rsync should be avoided for copying files unless you can live with the above limitations"
    
    Fand keine Hinweise darauf, dass sich unter 10.4.8 etwas geändert hätte.

    Wie handhabt ihr das mit dem -E-Schalter? Was ist der "worst case", wenn man die Metadaten einfach nicht abgleicht?
     
  8. maceis

    maceisMacUser Mitglied

    Mitglied seit:
    24.09.2003
    Beiträge:
    16.696
    Zustimmungen:
    602
    Du wirst es nicht glauben, aber eben war ich auf der selben Seite und wollte Dir gerade diese Informationen geben.

    Das Problem ohne dn Schalter -E zu syncen, ist, dass die Metadaten verloren gehen, Dateien werden nicht mehr mit dem "richtigen" Icon angezeigt, nicht mehr vom richtigen Programm geöffnet, Previews gehen verloren usw.
    Nicht schön.
     
    maceis, 24.01.2007
  9. Tecalto

    TecaltoMacUser Mitglied

    Mitglied seit:
    13.05.2003
    Beiträge:
    86
    Zustimmungen:
    3
    Vielleicht wird es ja mit 10.4.9 besser.

     
    Tecalto, 25.01.2007
  10. lab

    lab Thread StarterMacUser Mitglied

    Mitglied seit:
    02.08.2006
    Beiträge:
    67
    Zustimmungen:
    3
    Super! 10.4.9 wird ein wichtiges Update - Bluetooth soll auch verbessert werden. Vielleicht funktioniert dann auch endlich meine MightyMouse zuverlässig...
     
Die Seite wird geladen...
Ähnliche Themen - rsync kopiert statt
  1. isarcanoe
    Antworten:
    23
    Aufrufe:
    859
    isarcanoe
    26.06.2017
  2. CuSith
    Antworten:
    6
    Aufrufe:
    475
  3. vidtom
    Antworten:
    10
    Aufrufe:
    851
    Olivetti
    03.04.2016
  4. anhe
    Antworten:
    4
    Aufrufe:
    1.459
  5. macfreak-ac
    Antworten:
    10
    Aufrufe:
    1.471
    dannycool
    22.09.2010