Dans un système Unix, les programmes ne sont pas installés chacun dans un répertoire propre, mais leurs fichiers sont distribués dans les répertoires standards de l'arborescence telle qu'elle a été décrite à la section .
Tous les exécutables sont placés dans les différents répertoires bin et sbin (et quelques logiciels de divertissement dans les répertoires games de /usr et /usr/local). Cette organisation présente un gros avantage, il suffit de placer ces quelques répertoires dans la variable $PATH pour pouvoir invoquer les programmes simplement par leur nom, sans devoir préciser leur chemin complet.
Si le programme fournit une documentation sous format de page de manuel (la forme la plus classique sous Unix) ou de page info, ces fichiers seront installés dans les répertoires correspondants de /usr, /usr/local ou /usr/X11R6, de manière à ce que man ou info puissent les trouver.
La documentation supplémentaire, comme les classiques fichiers README ou Changelog, seront placés dans les répertoires doc.
Si le programme a besoin de fichiers supplémentaires (des données, des images pour son interface graphique, ...), ceux-ci seront placés dans un sous-répertoire portant le nom du programme (et éventuellement son numéro de version) dans les répertoires share. Il peut aussi se trouver dans le répertoire share des sous-répertoires partagés par plusieurs programmes ou à vocation plus générale, comme /usr/share/icons.
Si le programme à besoin d'une configuration globale celle-ci devra aller dans /etc si c'est un programme important pour le système (comme un serveur), ou sinon dans le répertoire du programme dans share. S'il faut enregistrer les paramètres des utilisateurs, cela ne peut se faire que dans le répertoire de l'utilisateur concerné, généralement dans un fichier ou un répertoire caché (voir section ).