Différences entre versions de « Rsync »
Sauter à la navigation
Sauter à la recherche
imported>SylvainBeucler m (Nouvelle page : rsync synchronise unidirectionnellement un dossier source et un dossier de destination. == sauvegarde == Options à utiliser: -vHS --delete-excluded --numeric-ids --exclude="..." ...) |
imported>SylvainBeucler |
||
(Une version intermédiaire par le même utilisateur non affichée) | |||
Ligne 4 : | Ligne 4 : | ||
Options à utiliser: | Options à utiliser: | ||
− | - | + | -aHS --delete-excluded --numeric-ids --exclude="..." ... |
Optionnellement: -A (acl) et -X (attributs étendus) | Optionnellement: -A (acl) et -X (attributs étendus) | ||
Ligne 40 : | Ligne 40 : | ||
En cas d'erreur, le code n'est pas 0. Qu'est-ce qu'une erreur dans ce cas: | En cas d'erreur, le code n'est pas 0. Qu'est-ce qu'une erreur dans ce cas: | ||
− | * le | + | * le fichier a changé pendant la sauvegarde (ex: fichier de log) |
* un fichier a disparu pendant la sauvegarde (ex: fichier de cache): ''some files vanished before they could be transferred (code 24)'' | * un fichier a disparu pendant la sauvegarde (ex: fichier de cache): ''some files vanished before they could be transferred (code 24)'' | ||
* erreur de permission: ''some files could not be transferred (code 23)'' | * erreur de permission: ''some files could not be transferred (code 23)'' | ||
Ligne 51 : | Ligne 51 : | ||
term1$ rsync -avHS a/ b/; echo $? | term1$ rsync -avHS a/ b/; echo $? | ||
− | Simulation erreur de | + | Simulation erreur de permission: |
chmod 0 fichier | chmod 0 fichier | ||
Similation erreur critique: | Similation erreur critique: | ||
chmod 0 dossier/ | chmod 0 dossier/ |
Version actuelle datée du 11 juin 2009 à 18:08
rsync synchronise unidirectionnellement un dossier source et un dossier de destination.
sauvegarde
Options à utiliser:
-aHS --delete-excluded --numeric-ids --exclude="..." ...
Optionnellement: -A (acl) et -X (attributs étendus)
--delete
Version 2: synonyme de --delete-before Version 3: synonyme de --delete-during / --del
- --delete-before est un algorithme en 2 passes, supprime d'abord, copie ensuite
- --delete-during est un algorithme en 1 passe, supprime au fur et à mesure
- --delete-after est un algorithme en 2 passes, copie d'abord, efface ensuite
En cas d'erreur: la suppression des fichiers est annulée:
- --delete-before: suppression dans tous les cas
- --delete-during: suppression partielle
- --delete-after: aucune suppression
Qu'est-ce qu'une erreur:
chmod 0
sur un répertoire (arrêt des suppressions non justifié)- une erreur disque (arrêt des suppressions justifié)
Ne pas confondre avec d'autres erreurs non critiques (cf. section "Code de retour Unix")
Forcer la suppression: --ignore-errors
Mode de comparaison
- Par défaut: taille et date de dernière modification
- Avec --checksum: utilisation d'une somme de contrôle (plus lent) - mais ce n'est PAS fait dans le cas courant
backuppc utilise --checksum-seed=XXXX avec XXXX constant pour améliorer les performances
Code de retour Unix
En cas d'erreur, le code n'est pas 0. Qu'est-ce qu'une erreur dans ce cas:
- le fichier a changé pendant la sauvegarde (ex: fichier de log)
- un fichier a disparu pendant la sauvegarde (ex: fichier de cache): some files vanished before they could be transferred (code 24)
- erreur de permission: some files could not be transferred (code 23)
- une erreur critique (cf. section "--delete"): IO error encountered -- skipping file deletion + code 23 ci-dessus
Simulation fichier qui disparaît:
term1$ mkdir a b term2$ while true; do i=$(($RANDOM / 6553)); rm -f $i; i=$(($RANDOM / 6543)); touch $i; done term1$ rsync -avHS a/ b/; echo $?
Simulation erreur de permission:
chmod 0 fichier
Similation erreur critique:
chmod 0 dossier/