Historiquement , le premier système de fichiers Unix créait deux entrées dans chaque répertoire: .pointant sur le répertoire lui-même et ..sur son parent. Cela fournissait un moyen facile de parcourir le système de fichiers, à la fois pour les applications et pour le système d'exploitation lui-même.
Ainsi, chaque répertoire a un nombre de liens de 2 + n, où n est le nombre de sous-répertoires. Les liens correspondent à l'entrée de ce répertoire dans son parent, à la propre .entrée du répertoire et à l' ..entrée de chaque sous-répertoire. Par exemple, supposons qu'il s'agisse du contenu du sous-arbre /parentdont tous les répertoires sont enracinés :
/parent
/parent/dir
/parent/dir/sub1
/parent/dir/sub2
/parent/dir/sub3
Il y dira ensuite un nombre de liens de 5: l’ direntrée dans /parent, l’ .entrée dans /parent/diret les trois ..entrées dans chacune de /parent/dir/sub1, /parent/dir/sub2et /parent/dir/sub3. Étant donné qu’il /parent/dir/sub1n’ya pas de sous-répertoire, son nombre de liens est 2 (l’ sub1entrée /parent/diret l’ .entrée /parent/dir/sub1).
Pour minimiser le nombre de casse spéciale pour le répertoire racine, qui n'a pas de parent «approprié», le répertoire racine contient une ..entrée pointant sur elle-même. De cette façon, il a également un nombre de liens de 2 plus le nombre de sous-répertoires, le 2 étant /.et /...
Les systèmes de fichiers ultérieurs ont eu tendance à garder une trace des répertoires parents en mémoire et n’ont généralement pas besoin d’exister .et ..doivent exister en tant qu’entrées réelles; Les systèmes Unix modernes typiques traitent .et ..comme des valeurs spéciales dans le code du système de fichiers indépendant du type de système de fichiers. Certains systèmes de fichiers sont encore .et ..entrées, ou font semblant de même si rien ne semble sur le disque.
La plupart des systèmes de fichiers font encore un nombre de liens de 2 + n pour les répertoires que ce soit .et les ..entrées existent, mais il y a des exceptions, par exemple Btrfs ne le fait pas.