Je n'ai aucune expérience avec btrfs, mais il est annoncé qu'il peut
dédupliquer les fichiers.
Dans mon application, j'aurais besoin de dupliquer des arborescences de répertoires entières.
D'après ce que j'ai appris, btrfs ne supprime les doublons que lors de certains post-scans, pas
immédiatement. Même en utilisant simplement cp
ne semble pas déclencher de
déduplication (au moins, df
montre une utilisation accrue du disque dans la
taille des fichiers copiés).
Puis-je éviter de déplacer complètement les données et dire à btrfs
directement pour
dupliquer un fichier à un autre emplacement, en clonant simplement ses
métadonnées ?
Essentiellement, similaire à un lien physique, mais avec des métadonnées indépendantes
(autorisations, heures de modification, …).
Réponse acceptée :
Il y a deux options :
cp --reflink=always
cp --reflink=auto
La seconde est presque toujours préférable à la première. Utiliser auto
signifie qu'il reviendra à faire une copie conforme si le système de fichiers ne prend pas en charge le reflinking (par exemple, ext4 ou la copie sur un partage NFS). Avec la première option, je suis presque sûr que cela échouera carrément et arrêtera la copie.
Si vous l'utilisez dans le cadre d'un script qui doit être robuste face à des conditions non idéales, auto
vous servira mieux.