L'identité du répertoire /usr dans le système de fichiers Linux
usr n'est pas un "user"
Si vous avez déjà utilisé Linux, vous avez forcément rencontré le répertoire /usr.
Au début, j'ai pensé de la même façon que beaucoup d'autres débutants.
“Ah, c'est
/usr, donc c'est un répertoire lié aux utilisateurs. Il doit contenir quelque chose à propos des comptes utilisateurs.”
Cette confusion est courante, mais pour conclure dès le départ :
/usrn'est pas un répertoire dédié aux données individuelles des "utilisateurs". Le répertoire personnel des utilisateurs est/home, tandis que/usra un rôle complètement différent.
Dans cet article, nous allons clarifier l'identité réelle et le rôle de /usr, ainsi que la façon dont il se distingue d'autres répertoires comme /home, /opt et /var.
1. Première conclusion : /usr n'est pas un répertoire "d'utilisateur"
Dans le Linux moderne, on peut résumer la position de /usr en une seule phrase.
/usr= zone où se trouvent les « ressources partagées et (généralement) en lecture seule » utilisées par le système et les applications
En d'autres termes :
- Fichiers exécutables du système et des applications
- Bibliothèques utilisées par ces exécutables
- Manuels, icônes, fichiers de données partagés
À l'inverse, les éléments que l'on imagine souvent comme « documents personnels, paramètres, fichiers téléchargés » se trouvent :
- Sous
/home/nom_utilisateur - Ils ont un rôle totalement différent de celui de
/usr.
Donc, penser à /usr comme un répertoire "utilisateur" est incorrect.
2. Que signifie réellement usr ?
Il y a un peu d'histoire et de débat à ce sujet.
- À l'époque Unix, il existait des répertoires personnels sous
/usr. - C'est pourquoi certains voient
usrcomme une abréviation de "user". - D'autres l'interprètent comme "Unix System Resources".
Mais pour les utilisateurs Linux modernes, l'important est le rôle actuel plutôt que l'origine historique.
Dans le standard de l'arborescence des systèmes de fichiers (FHS), /usr est défini ainsi (résumé) :
- Zone où se trouvent les données partagées (lecture seule) à l'échelle du système
- Programmes, bibliothèques, manuels, données communes
En bref, dans le Linux que nous utilisons aujourd'hui :
Que
usrsoit une abréviation de "user" ou non, ce n'est pas vraiment important. Il suffit de comprendre que c'est "l'endroit où se trouvent les ressources partagées du système et des applications".
3. Que contient /usr ?
Si vous exécutez ls /usr sur un serveur ou un bureau, vous verrez généralement ces répertoires.
$ ls /usr
bin lib lib64 local sbin share include ...
Chaque répertoire a une signification approximative :
/usr/bin- Fichiers exécutables destinés aux utilisateurs courants.
- Ex :
/usr/bin/python,/usr/bin/grep,/usr/bin/curl… /usr/sbin- Exécutables destinés à l'administration système, généralement utilisés par root.
- Ex :
/usr/sbin/sshd,/usr/sbin/apachectl… /usr/lib,/usr/lib64- Bibliothèques partagées utilisées par les programmes.
- Ex : fichiers
.so. /usr/share- Données partagées indépendantes de l'architecture.
- Ex : pages de manuel (
/usr/share/man), icônes, données de localisation… /usr/include- Fichiers d'en-tête C/C++ utilisés par les chaînes d'outils de développement.
/usr/local- Espace réservé aux programmes installés localement, non gérés par le gestionnaire de paquets du système (en détail plus loin).
En résumé :
/usrest l'ensemble des programmes et ressources partagées à l'échelle du système – un grand entrepôt d'exécutables, de bibliothèques et de données communes.
4. /usr vs /home vs /opt vs /var — quelles différences ?
L'arborescence du système de fichiers Linux peut être déroutante au début, surtout lorsqu'on compare /usr, /home, /opt et /var.
4.1 /home — le véritable "chez l'utilisateur"
- Exemples de chemins :
/home/alice,/home/bob - Contenu par utilisateur :
- Documents, photos, téléchargements, dossiers de projets
- Paramètres personnels (
~/.config,~/.ssh, etc.) - Même après une réinstallation du système, on conserve souvent
/home.
Données et paramètres personnels = presque tout dans
/home
4.2 /usr — les ressources partagées du système et des applications
- Fichiers exécutables :
/usr/bin,/usr/sbin - Bibliothèques :
/usr/lib* - Données partagées :
/usr/share
"Programmes, bibliothèques et données partagées à l'échelle du système" =
/usr
Les fichiers d'un compte utilisateur individuel n'y figurent pas.
4.3 /opt — espace pour une application « tout-en-un »
- Applications commerciales ou tierces distribuées indépendamment du gestionnaire de paquets du système.
- Ex :
/opt/google/chrome,/opt/mycompany/app - Un répertoire unique contient l'application entière.
Un espace où chaque application est gérée comme une unité.
4.4 /var — données variables (Variable)
- Logs :
/var/log - Cache :
/var/cache - Files de queue/spool :
/var/spool - Bases de données, fichiers d'état, etc.
Données qui changent fréquemment (runtime) =
/var
5. Pourquoi /bin n'est pas /usr/bin ? (et c'est encore plus déroutant aujourd'hui)
Les anciennes documentations expliquent la séparation entre /bin et /usr/bin, mais la plupart des distributions modernes simplifient cela en :
/bin→ lien symbolique vers/usr/bin/sbin→ lien symbolique vers/usr/sbin
(Ex : Fedora, Ubuntu)
Ainsi, sur un système actuel :
- La plupart des exécutables se trouvent sous
/usr/binet/usr/sbin /binet/sbinsont des « raccourcis » pour la compatibilité avec les anciennes versions.
Cela peut sembler plus confus au début, mais l'essentiel est :
Où se trouvent réellement les programmes ? → La plupart se trouvent dans
/usr/binet/usr/sbin.
6. Comment éviter la confusion pour les débutants Linux
Les débutants rencontrent souvent ces questions :
- "
/usrest un répertoire utilisateur…" - "Dois-je installer mes programmes dans
/usr?" - "Quelle est la différence entre
/homeet/usr?"
En gardant à l'esprit les critères suivants, la plupart des confusions disparaissent.
6.1 Où placer mes scripts/outil personnels ?
- Scripts personnels :
~/binou~/scripts - Ajoutez le répertoire au
PATHsi nécessaire.
mkdir -p ~/bin
echo 'export PATH="$HOME/bin:$PATH"' >> ~/.bashrc
Ces fichiers sont dans votre "zone personnelle", distincte de /usr.
6.2 Où placer une application utilisée par tout le système ?
-
Applications compilées à partir de la source ou distribuées sous AppImage, tar.gz, etc.
-
Exécutable principal :
/opt/nom_app - Lien d'entrée :
/usr/local/bin
C'est un schéma propre et couramment utilisé.
Ainsi, /usr/local est :
Un espace pour les programmes gérés localement, non installés via le gestionnaire de paquets.
Il est plus naturel de considérer /usr/local comme un "espace dédié à l'administrateur" plutôt que de le comparer directement à /usr.

7. Résumé : /usr n'est pas "le domicile de l'utilisateur", mais "l'entrepôt du système"
En un mot :
/usrn'est pas un répertoire de données utilisateur.- Dans le Linux moderne,
/usrcontient : - Exécutables partagés du système et des applications
- Bibliothèques utilisées par ces exécutables
- Données communes (manuels, icônes, etc.)
- Les données personnelles se trouvent sous
/home/nom_utilisateur. - Les applications que vous installez vous-même se placent généralement dans
/optou/usr/local.
Comprendre l'arborescence du système de fichiers Linux vous permet de répondre aux questions suivantes :
- "Où dois-je placer ce fichier ?"
- "Cette application sera-t-elle utilisée par tout le système ou seulement par moi ?"
- "Quelles données dois-je conserver lors d'une réinstallation du système ?"
La première étape pour y répondre est de bien saisir l'identité de /usr.
Aucun commentaire.