Je me demande pourquoi des répertoires tels que /usr
et /usr/local/
sont possédés et créés par root. Habituellement, je suis connecté en tant qu'utilisateur normal et je veux stocker les programmes que j'utilise personnellement dans ces répertoires. Par exemple, Android Studio sont stockés à cet emplacement. À chaque fois que je dois effectuer une mise à jour ou apporter tout type de modification, les autorisations ne sont pas accordées car je ne suis pas connecté en tant que root.
Le nom de répertoire "usr" implique déjà que des programmes basés sur des utilisateurs (normaux) sont supposés s'y trouver.
N’ai-je pas eu le concept derrière ce répertoire?
Rien ne vous empêche d'installer et d'exécuter des applications localement, sans privilèges Sudo. Localement, ce qui signifie: dans votre propre répertoire personnel . C'est comme ça que c'est supposé être.
Vous ne devriez pas avoir les mêmes autorisations sur les répertoires que vous partagez avec d'autres utilisateurs possibles de votre système.
L'explication de ce que usr
signifie littéralement varie de ressources système unix à ressources système de l'utilisateur. Ce dernier ne doit toutefois pas être interprété comme appartenant à et appartenant aux utilisateurs, mais comme servant servant utilisateurs, en face de servant le système . Ici nous lisons à propos de /usr
:
Hiérarchie secondaire pour les données utilisateur en lecture seule; contient la majorité des utilitaires et applications (multi) utilisateurs.
L’essentiel, c’est que toutes les explications (modernes) indiquent qu’il s’agit de " données partageables, en lecture seule ", et: " ne doit pas être écrit dans "
Le nom de répertoire "usr" implique déjà que des programmes basés sur des utilisateurs (normaux) sont supposés s'y trouver.
Pas depuis l'âge des ténèbres de l'histoire d'Unix, si jamais cela a été. Que signifient les abréviations "etc" et "usr"?
Maintenant, le répertoire /usr
est à gérer par l'administrateur. Cependant, la quasi-totalité du contenu de /usr
est gérée par des packages, et /usr/local
est l'emplacement où l'administrateur peut installer un logiciel local, en dehors du système de gestion de packages. Consultons le norme de hiérarchie de système de fichiers :
/ usr/local: hiérarchie locale
Objectif
La hiérarchie
/usr/local
est destinée à être utilisée par l'administrateur système lors de l'installation locale du logiciel. Il doit être sécurisé pour ne pas être écrasé lorsque le logiciel système est mis à jour. Il peut être utilisé pour des programmes et des données pouvant être partagés entre un groupe d'hôtes, mais ne se trouvant pas dans/usr
.Les logiciels installés localement doivent être placés dans
/usr/local
plutôt que/usr
sauf s’il est en cours d’installation pour remplacer ou mettre à niveau le logiciel dans/usr
.
Pour /usr
et /usr/local
dans un système Linux moderne, les utilisateurs normaux ne devraient pas disposer d'autorisations en écriture. Sur un système mono-utilisateur, vous pouvez certes accorder un accès en écriture à /usr/local
, mais vous disposez de toute façon des privilèges Sudo
(à quelle fréquence devez-vous écrire dans ces répertoires?).
Le répertoire est destiné aux logiciels installés globalement par l'administrateur. Si vous souhaitez installer un logiciel vous-même, faites-le dans votre répertoire personnel. Consultez le FHS pour plus d'informations sur les emplacements standard.