Benutzer-Werkzeuge

Webseiten-Werkzeuge


rsync

Dies ist eine alte Version des Dokuments!


rsync

Serversicherung Feynman, Newton

  • Am Kepler sind zwei SATA-Festplatten angeschlossen
kepler:~ # screen
kepler:~ # fdisk -l
Platte /dev/hda: 80.0 GByte, 80026361856 Byte
/dev/hda1               1         784     6297448+  82  Linux Swap / Solaris
/dev/hda2   *         785        9729    71850712+  83  Linux

Platte /dev/sda: 500.1 GByte, 500107862016 Byte
/dev/sda1               1       60801   488384001   83  Linux

Platte /dev/sdb: 1000.2 GByte, 1000204886016 Byte
/dev/sdb1               1      121601   976760001   83  Linux

kepler:~ # mount /dev/sda1 /mnt/sda1
kepler:~ # mount /dev/sdb1 /mnt/sdb1
kepler:~ # rsync -av --progress -e ssh root@10.67.0.253:/daten /mnt/sda1/feynman
kepler:~ # rsync -av --progress -e ssh root@10.67.0.254:/daten /mnt/sdb1/newton

NewtonNeu -> Festplatte

newtonneu:~ # rsync -av -P --delete-before -e ssh root@10.67.0.2:/daten/ /mnt/sdb1/.
  • rsync -av /quelle/beispiel/ /ziel
  • Zu beachten ist, dass sich rsync etwas unorthodox verhält, was den Slash "/" am Ende des Quellpfades angeht.
  • Wird der Slash am Ende des Quellpfades weggelassen, dann wird dieses Verzeichnis kopiert, wobei der letzte Teilpfad (also "beispiel" in dem obigen Fall) im Zielverzeichnis angelegt wird, im Beispiel wäre das /ziel/beispiel.
  • Gibt man den Slash dagegen an, werden alle Dateien im angebenen Verzeichnis direkt in das Zielverzeichnis kopiert, d.h. die Dateien werden im Beispiel nach /ziel kopiert, das Unterverzeichnis beispiel wird in diesem Fall also nicht angelegt.
  • Beim Zielpfad ist ein Slash am Ende dagegen redundant.
--progress                  Fortschrittsbalken
--partial                   keep partially transferred files
-P                          same as --partial --progress
--delete-before             receiver deletes before xfer, not during
-b, --backup                make backups (see --suffix & --backup-dir)
-l, --links                 copy symlinks as symlinks

-p, --perms                 preserve permissions
-o, --owner                 preserve owner (super-user only)
-g, --group                 preserve group

-a, --archive               archive mode; equals -rlptgoD (no -H,-A,-X)
-v, --verbose               increase verbosity
-t, --times                 preserve modification times
    --devices               preserve device files (super-user only)
    --specials              preserve special files
-D                          same as --devices --specials
-x, --one-file-system       don't cross filesystem boundaries
rsync --progress -avu Quelle Ziel
peer:~ # rsync -av --delete --progress /d/ /e/.

ISO aktualisieren auf proxy

peer:/ # rsync -av -P --partial -e ssh root@IP:/daten/name.iso /daten/name.iso
rsync -av -e ssh remoteuser@remotehost:/remote/dir /this/dir/
rsync -av -e ssh root@10.0.0.3:/home/mustermann /home/mustermann
feynman:/ # rsync -av -e ssh root@10.67.0.254:/daten/ /daten
geht auch in die andere Richtung!
rsync -av -e ssh /entwicklung/misc/s4e root@193.170.221.4:/daten
newton:~ # rsync -av --progress -e ssh root@10.67.0.254:/daten /mnt/sda1
rsync -av --progress -e ssh root@10.0.0.140:/home/andrea/ /d/backup/IBM_andrea
rsync -av --partial-dir=.rsync-partial --progress -e ssh 2011-09-11_OSC_Nuernberg.odp root@193.170.221.2:/daten/d4e/praesentationen/2011-09-11_OSC_Nuernberg

Ausnahmen

rsync --force --ignore-errors --delete --delete-excluded --progress -av --exclude=vmware /daten/* -e ssh root@192.168.100.2:/daten/
rsync --force --ignore-errors --delete --delete-excluded --progress -av --exclude-from=/root/.rsync/exclude /daten -e ssh root@10.67.4.189:/

rsync unter Windows

  • xcopy "Quelle" "Ziel" /c /s /r /d /y /i > C:\xcopy.log
  • xcopy e: f: /c /e /h /m /r /s > F:\xcopy.log ← Backup Anni

rsync Server

/etc/rsyncd.conf
gid = users
read only = true
use chroot = true
transfer logging = true
log format = %h %o %f %l %b
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
hosts allow =
slp refresh = 300
use slp = false
 
[homefreigabe]
path = /home/matthias/
comment = syncordner
auth users = matthias
secrets file = /etc/rsyncd.secrets
read only = false
uid= 1000
/etc/rsync.secrets
matthias:smbpasswort
rcrsyncd start
insserv rsyncd
  • Sichern:
backup.sh
#!/bin/bash
rsync -auv --delete --password-file=rsync.pwd --exclude=/.* --exclude=Videos/* ~/ matthias@192.168.1.42::homefreigabe
sleep 2
  • Rücksichern:
restore.sh
#!/bin/bash
rsync -auv --delete --password-file=rsync.pwd --exclude=/.* --exclude=Videos/* matthias@192.168.1.42::homefreigabe ~/
sleep 2
  • Passwort: Besser ssh-Schlüssel!
rsync.1367855502.txt.gz · Zuletzt geändert: 2013/05/06 17:51 von admin