RSYNC ist beim Kopieren von Dateien langsam

Der rsync-Vorgang wird für ein Dateisystem sehr langsam ausgeführt.

Ursache: rsync ist ein serieller Vorgang. Daher ist er langsam, wenn ein großes Dateisystem kopiert wird, insbesondere, wenn der Prozess Snapshots umfasst.

Lösung: Verwenden Sie eine der folgenden Alternativen:

  • GNU Parallel zur parallelen Ausführung von rsync. Beispiel:
    time find /mnt/MyFileSystem -mindepth 1 -maxdepth 1 | parallel -P100 rsync --archive --perms --owner --group --xattrs --acls --recursive --delete --compress --exclude=.snapshot --ignore-errors --progress --log-file=$HOME/rsync/logs/test.log1 --quiet -e ssh {} root@10.0.3.6:/mnt/rsync_target

    Weitere Informationen finden Sie unter GNU Parallel - GNU Project.

  • File Storage Parallel Tools

    Weitere Informationen und Beispiele finden Sie unter File Storage Parallel Tools verwenden.

  • Befehl find mit der Option xargs. Beispiel:
    find ${source_dir}  -mindepth 1 -maxdepth 1 | xargs -P 24 -I {} rsync --archive --perms --owner --group --xattrs --acls --recursive --delete --compress --log-file=<logfile_path> -quiet -e ssh {} <destination_user>@<destination_instance>:<destination_dir>

    Weitere Informationen finden Sie auf der Linux-Manpage für find(1) und auf der Linux-Manpage für xargs(1).

  • Weitere Informationen zum Kopieren von Dateien aus einer Region in eine andere Region mit rsync finden Sie unter Das Kopieren von Dateien aus einer Region in eine andere mit RSYNC oder FPSYNC ist langsam.