Comment puis-je afficher la quantité de taille nominale de fichier réellement remplie de données? Comme vmtouchmontre la quantité de fichier actuellement en mémoire ...
Je m'attends à ce que le flux de travail soit comme ceci:
$ fallocate -l 1000000 data
$ measure_sparseness data
100%
$ fallocate -p -o 250000 -l 500000 data
$ measure_sparseness
50%
Solution: utilisez du -bsh-les du -shet comparez-les.
filefrag data-> multiples FIBMAP: Invalid argument-> data: 1 extent found...
filefrag -efonctionne parfaitement sur XFS et ext4 au moins. Je n'ai pas testé sur d'autres. Il utilise FIEMAP (carte d'extension), avec un repli sur FIBMAP. Si ioctlcela ne fonctionne pas, cela ne sera pas utile.
filefragn'a pas d' -eoption.
e2fsprogs? Je suis sûr que ce n'est pas une fonctionnalité récente. Il existe également une -voption qui imprime les mêmes informations détaillées (plus quelques lignes d'en-tête supplémentaires). Peut-être que vous en filefragaurez. Contrairement à xfs_bmap, cependant, il n'indique pas explicitement les trous avec des lignes distinctes, il a juste des discontinuités dans la position du fichier. Quoi qu'il en soit, je ne suis pas surpris que tmpfscela ne prenne pas en charge FIEMAP, car il n'y a pas de périphérique de bloc en tant que magasin de sauvegarde, il n'y a donc pas de valeur raisonnable pour l'emplacement des extensions.
filefragpour tout système de fichiers etxfs_bmap -vplpour XFS sont des outils clés pour montrer où se trouvent les données (et où se trouvent les extensions non écrites pré-allouées) lors de la lecture avec des fichiers clairsemés et des perforations.