Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
informatique:linux:rsync [2009/08/24 12:56] benoit |
informatique:linux:rsync [2018/09/06 19:10] (Version actuelle) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Rsync ====== | ====== Rsync ====== | ||
+ | |||
+ | |||
+ | |||
+ | ===== Client ===== | ||
Pour synchroniser les fichiers du serveur local avec le serveur distant : | Pour synchroniser les fichiers du serveur local avec le serveur distant : | ||
- | rsync -lrvcpogt /home/* root@remote:/home/* | + | rsync -Pav --numeric-ids /home/* root@remote:/home/* |
+ | |||
+ | Pour synchroniser les fichiers du serveur local avec le serveur distant : | ||
+ | rsync -lrvcpogtu /home/* root@remote:/home/* | ||
+ | |||
+ | Pour synchroniser les fichiers du serveur local avec le serveur distant en écrasant les fichiers modifiés : | ||
+ | rsync -lrvcpogt --inplace /home/* root@remote:/home/* | ||
+ | |||
+ | Pour niveau block il ne faut pas utiliser l'option **-c** checksum, de plus la synchronisation est plus rapide (le checksum est souvent long à faire) : | ||
+ | rsync -lrvpogt --inplace --stats /home/* root@127.0.0.1:/home/* | ||
+ | |||
+ | Pour synchroniser le partage **rsync** nommé **ftp** vers votre serveur : | ||
+ | rsync rsyncserver::ftp/* . | ||
+ | |||
+ | Pour sauvegarder uniquement les fichier *.doc* et exclure tous les autres fichiers. | ||
+ | rsync -r rsync://user@remote-server/TEST --include=**.doc* --filter="-! */" . | ||
+ | |||
+ | Remarque importante : deux étoiles sont nécessaires sur "* *.doc*" pour que cela fonctionne. | ||
+ | |||
+ | |||
+ | ===== Serveur ===== | ||
+ | |||
+ | Installer le paquetage : | ||
+ | apt-get install rsync | ||
+ | |||
+ | Copier le fichier de configuration : | ||
+ | cp /usr/share/doc/rsync/examples/rsyncd.conf /etc/rsyncd.conf | ||
+ | |||
+ | Editer le fichier ''/etc/rsyncd.conf'' et modifier selon votre besoin, exemple ci-dessous : | ||
+ | # sample rsyncd.conf configuration file | ||
+ | |||
+ | # GLOBAL OPTIONS | ||
+ | |||
+ | #motd file=/etc/motd | ||
+ | log file=/var/log/rsyncd | ||
+ | # for pid file, do not use /var/run/rsync.pid if | ||
+ | # you are going to run rsync out of the init.d script. | ||
+ | pid file=/var/run/rsyncd.pid | ||
+ | #syslog facility=daemon | ||
+ | #socket options= | ||
+ | |||
+ | # MODULE OPTIONS | ||
+ | |||
+ | [ftp] | ||
+ | comment = public archive | ||
+ | path = /var/www/pub | ||
+ | use chroot = yes | ||
+ | # max connections=10 | ||
+ | lock file = /var/lock/rsyncd | ||
+ | # the default for read only is yes... | ||
+ | read only = yes | ||
+ | list = yes | ||
+ | uid = nobody | ||
+ | gid = nogroup | ||
+ | # exclude = | ||
+ | # exclude from = | ||
+ | # include = | ||
+ | # include from = | ||
+ | # auth users = | ||
+ | # secrets file = /etc/rsyncd.secrets | ||
+ | strict modes = yes | ||
+ | |||
+ | # ici uniquement 192.168.40.197 est acceptée, toutes les autres adresses IP sont rejetées | ||
+ | hosts allow = 192.168.40.197 | ||
+ | hosts deny = * | ||
+ | ignore errors = no | ||
+ | ignore nonreadable = yes | ||
+ | |||
+ | # ici les logs sont activés | ||
+ | transfer logging = yes | ||
+ | # log format = %t: host %h (%a) %o %f (%l bytes). Total %b bytes. | ||
+ | timeout = 600 | ||
+ | refuse options = checksum dry-run | ||
+ | dont compress = *.gz *.tgz *.zip *.z *.rpm *.deb *.iso *.bz2 *.tbz | ||
+ | |||
+ | |||
+ | |||
+ | Editer le fichier ''/etc/inetd.conf'' en ajoutant la ligne suivante : | ||
+ | rsync stream tcp nowait root /usr/bin/rsync rsyncd --daemon | ||
+ | |||
+ | Redémarrer inetd : | ||
+ | /etc/init.d/openbsd-inetd reload | ||
- | Pour | + | Pour créer des partages **rsync** prendre exemple sur la section **[ftp]** du fichier ''/etc/rsyncd.conf'' |
- | rsync -u --inplace --stats file.tar.gz root@127.0.0.1:/root/file-bkp.tar.gz | + |