Bonjour,

plutôt que cp, j’ai utilisé rsync -rv pour un réaliser un backup audio et vidéo 
de ~2To vers un disque externe. Seul le contenu m’intéressait, je n’ai donc pas 
préservé les propriétaires ni les permissions avec l’option -a.

Attention cependant. Il faut penser alors à ajouter l’option -t (qui est 
normalement implicite quand on utilise -a), sinon les fichiers sont copiés sur 
la cible avec la date du jour, et non la date de dernière modification qu’ils 
possèdent sur la source. J’avais d’abord pensé que ça n’avait pas d’importance 
dans mon cas, puisque seul le contenu m’était utile.

Mais l’importance existe pour rsync lui-même. Si les dates de dernières 
modification ne concordent pas sur la source et la cible, à la prochaine 
sauvegarde incrémentale, rsync -rv --del va considérer tous les fichiers comme 
ayant été modifiés. rsync recopiera alors la totalité des 2To fichier par 
fichier (pour lui tout a changé), et il n’y aura plus rien d’incrémental.

Si on se trouve confronté à ce problème, il est possible de débrayer la 
vérification sur horodatage, pour que rsync se contente de vérifier la 
concordance de taille, pour juger si un fichier a changé ou non. Mais c’est 
dommage d’affaiblir ainsi la fiabilité du backup.

Dans mon cas, j’ai juste relancé une nouvelle sauvegarde avec rsync -rvt --del 
vers la même cible, et elle a écrasé en totalité la première. Ce n’est pas 
élégant, mais maintenant les dates concordent et la prochaine sauvegarde sera 
incrémentale.


Un ami m’a donné le conseil suivant, que je n’ai pas suivi mais que je partage 
avec vous: avant d’ordonner la sauvegarde incrémentale avec rsync -rv --del, il 
m’aurait été possible de rectifier d'abord les dates sur le volume cible, grâce 
à find associé à touch:


find . -type f -exec touch -m -r {} ../cible/{} \;


où le répertoire courant « . » est la racine de la source et ../cible/ est le 
point de montage de la cible. find va alors parcourir tous les fichiers sous le 
répertoire courant, et touch va appliquer dans l'arborescence sous "../cible/" 
la date de modification (-m) qui correspond au fichier correspondant dans le 
répertoire courant.


À vérifier d’abord avec un test à blanc me dit mon ami:

find . -type f -exec echo touch -m -r {} ../cible/{} \;


Si ça peut être utile à quelqu’un ici.


--
Frédéric Dumas
[email protected]





_______________________________________________
gull mailing list
[email protected]
https://forum.linux-gull.ch/mailman/listinfo/gull

Répondre à