J'utilise 2 serveurs Ubuntu 9.10. Je dois synchroniser les changements entre ces deux machines. Voici les répertoires que je dois synchroniser:
/ usr,/etc,/var,/bin,/sbin,/lib
J'utilise rsync comme ci-dessous pour la réplication:
rsync -avP 192.168.2.100:/usr/ /usr
rsync -avP 192.168.2.100:/etc/ /etc
------ Ici, je devrai exclure de nombreux fichiers tels que/etc/udev/*,/etc/hosts,/etc/hostname, ...
J'ai essayé d'utiliser rsync -avP --exclude '/etc/fstab' 192.168.2.100:/etc/ /etc
mais cela a écrasé tout le répertoire/etc
Quelqu'un peut-il éditer et me donner rsync à une commande d'une ligne qui synchronise les répertoires spécifiés et non ceux qui sont exclus?. Besoin d'aide pour!
Ce qui suit est la commande rsync pour synchroniser plusieurs répertoires en une ligne et est travaillé pour moi. S'il vous plaît laissez-moi savoir si c'est la bonne façon d'utiliser.
Cela devrait être exécuté sur le système SOURCE:
rsync -avP --exclude 'udev' --exclude 'hosts' --exclude 'hostname' --exclude 'any-account-under-home' /etc /home /usr /var /lib /bin /sbin 192.168.2.100:/
Nous pouvons exclure de nombreux fichiers/répertoires de certains répertoires.
Si nous avons un fichier du même nom, disons 'test' sous/etc/et/home et si vous voulez exclure ce fichier uniquement de/etc, puis placez une entrée d'exclusion excluant 'test' de tous.
Le modèle d'exclusion est relatif aux fichiers source, pas aux fichiers de destination. En fait, vous excluez 192.168.2.100:/etc/etc/fstab
, qui n'existe pas.
Tu devrais utiliser:
rsync -avP --exclude '/fstab' 192.168.2.100:/etc/ /etc
Vous devriez utiliser quelque chose comme ceci:
$ Sudo rsync "$backup_options" --log-file="$backup_log_file" --include-from="$backup_incl_from_file" --exclude-from="$backup_excl_from_file" "$backup_src_folder" "$backup_dest_folder"
où le fichier texte $ backup_incl_from_file devrait inclure:
usr/***
etc/***
var/***
bin/***
sbin/***
lib/***
...
et le fichier texte $ backup_excl_from_file devrait inclure:
etc/udev/
etc/hosts
etc/hostname
...
Dans cet exemple
backup_src_folder="192.168.2.100:/"
backup_dest_folder="192.168.2.101:/"
Il est important de lire la page de manuel rsync avant d'utiliser cet exemple pour répondre à vos besoins, en portant une attention particulière à la section INCLUDE/EXCLUDE PATTERN RULES.
Essayez ceci dans la fenêtre Options avancées pour exclure un répertoire et ses sous-répertoires.
--exclude "/ user/pathtodirectory * /" où "utilisateur" est votre nom d'utilisateur et "pathtodirectoy" est le répertoire que vous souhaitez exclure, ainsi que tous ses sous-répertoires. Assurez-vous d'inclure les guillemets doubles et les barres obliques.
Exemple: --exclude "/ johndoe/downloads * /"
Testé à la fois sur Ubuntu 14.04 et Ubuntu Gnome 14.04.