Les sparse files, appelés aussi fichiers à trous ou encore fichiers alloués dynamiquement sont souvent mis en place par les machines virtuelles. Le SGBD Oracle les utilise aussi pour les tablespaces temporaires.

Le principal intérêt des sparse files est la rapidité de création, le fichier n'est pas initialement créé à sa taille définitive, mais s'agrandit progressivement en fonction du besoin en espace jusqu'à la dimension maximale.

Afin de détecter si un fichier est de type sparse file il suffit de comparer sa taille théorique, donc sa taille finale, avec sa taille réelle.

Les commandes ls et du permettent ceci.

ls -hl fichier

Retourne par exemple 51M, c'est la taille théorique donc finale

du -h fichier

Retourne 7,9M, il s'git de la taille réelle, et nous sommes en présence d'un sparse file. Dans le cas d'un fichier dit complet les deux commandes retournent la même valeur.

La commande ls avec les options alsh permet de voir les deux informations en même temps.

ls -alsh fichier
7,9M -rw-r----- 1 erik erik 51M sep 24 18:01 fichier