Ce que vous recherchez est la norme de hiérarchie du système de fichiers. Les réponses à toutes les questions que vous posez sont couvertes dans le FHS.
En ce qui concerne l'écriture d'applications conformes à n'importe quelle distribution Linux, vous pouvez également consulter la spécification du répertoire de base XDG. Il est plus orienté bureau/utilisateur.
Le Filesystem Hierarchy Standard est probablement la meilleure référence ici (voir l'entrée de Wikipedia et le texte intégral dans différents formats), comme recommandé par le LSB. Bien qu'aucune distribution que je connaisse ne corresponde complètement à la norme, la plupart sont proches, c'est donc une bonne référence pour décider de votre propre "meilleure pratique".
Il existe une structure standard appelée Filesystems Hierarchy Standard (FHS). Certaines distributions Linux y adhèrent, d'autres non.
En termes simples, en ce qui concerne /usr et /var, vous pouvez dire que /usr sont des fichiers installés par l'utilisateur qui ne changent pas et /var sont pour les fichiers qui changent (spool, documentation formatée). C'est ainsi que vous pouvez, par exemple, monter /usr sur un réseau et avoir plusieurs ordinateurs qui partagent le /usr/ "statique" et avoir un /var local pour les fichiers qui sont "dynamiques".
Citations du Guide de l'administrateur système Linux :http://tldp.org/LDP/sag/html/dir-tree-overview.html
/usr/lib
Fichiers de données inchangés pour les programmes et les sous-systèmes, y compris certains fichiers de configuration à l'échelle du site. Le nom lib vient de library; à l'origine, les bibliothèques de sous-programmes de programmation étaient stockées dans /usr/lib.
/usr/local
L'emplacement pour les logiciels et autres fichiers installés localement. Les distributions peuvent ne rien installer ici. Il est réservé au seul usage de l'administrateur local. De cette façon, il peut être absolument certain qu'aucune mise à jour ou mise à niveau de sa distribution n'écrasera les logiciels supplémentaires qu'il a installés localement.
/var/lib
Fichiers qui changent pendant que le système fonctionne normalement.
Vous pouvez en savoir plus sur http://tldp.org/LDP/sag/html/dir-tree-overview.html s'il existe d'autres répertoires que vous souhaitez connaître.