du comptage des liens vers des fichiers?
J'ai un système de sauvegarde qui crée des répertoires nommés d'après des Timestamps Unix, puis crée des sauvegardes incrémentielles à l'aide d'un hardlink système (--link-dest en rsync), si typiquement la première sauvegarde est très grand, et puis plus tard, les sauvegardes sont les fractions comme des grands.
C'est ma sortie de courant de mes sauvegardes:
root@athos:/media/awesomeness_drive# du -sh lantea_home/*
31G lantea_home/1384197192
17M lantea_home/1384205953
17M lantea_home/1384205979
17M lantea_home/1384206056
17M lantea_home/1384206195
17M lantea_home/1384207349
3.1G lantea_home/1384207678
14M lantea_home/1384208111
14M lantea_home/1384208128
16M lantea_home/1384232401
15G lantea_home/1384275601
43M lantea_home/1384318801
Tout semble correct, cependant, de prendre pour exemple le dernier répertoire, lantea_home/1384318801
:
root@athos:/media/awesomeness_drive# du -sh lantea_home/1384318801/
28G lantea_home/1384318801/
J'ai toujours obtenir ce comportement, pourquoi est le répertoire considéré comme 28G par le second du commandement?
Note - le résultat reste le même avec l'option-P et -L drapeaux.
Vous devez vous connecter pour publier un commentaire.
Les liens sont de véritables références pour le même fichier (représentée par son inode). Il n'y a pas de différence entre l ' "original" de fichiers et d'un lien en dur pointant vers elle ainsi. Les deux fichiers ont le même statut, les deux sont alors les références à ce fichier. La suppression de l'une d'entre elles permet à l'autre de rester intact. Seule la suppression de la dernière hardlink va supprimer le fichier à la fin et les libérer de l'espace disque.
Donc, si vous demandez à
du
ce qu'il voit dans un répertoire, il ne se soucie pas qu'il y a des liens physiques ailleurs pointant vers le même contenu. Simplement, il compte toutes les tailles et les recueille. Seulement les liens dans le répertoire ne sont pas comptées plus d'une fois.du
est habile (pas tous les programmes doivent être nécessairement).Donc, en effet, Un répertoire peut avoir un
du
taille de 28G, répertoire B peut avoir une taille de 29G, mais qu'ils n'occupent que 30G et si vous demandez àdu
de la taille de A et de B, vous obtiendrez un nombre.du
en compte que la première hardlink à la même inode qu'il rencontre, je tiens à lui donner des répertoires en ligne:$ du -hc --max-depth=0 dirA dirB 29G /dirA 1G /dirB 30G total
Et avec le commutateur "-l" du compte le nombre de liens physiques dans chaque sous répertoire, donc je peux voir, la taille de l'ensemble de sauvegarde, non seulement l'incrément delta.