[...] Mais cela ne semble pas logique, car je dois toujours entrer sudo, que ce soit pour gérer des paquetages, éditer des fichiers de configuration, installer un programme à partir des sources ou peu importe. [...]
L'adjectif implicite lié à tous ces derniers est qu'ils sont l' échelle du système ou
mondiaux changements. Vous devez considérer les origines d'Unix en tant que système multi-utilisateur 1 où plusieurs utilisateurs utiliseraient la même installation à distance. Cela n'aurait aucun sens pour un utilisateur profane d'autoriser la modification des paramètres globaux pour tous les utilisateurs. C'était l'administrateur système, la racine, le privilège et la responsabilité.
Dans un environnement multi-utilisateur, vous avez le logiciel préinstallé et sa configuration à l’échelle du système sous /usr
et /etc
respectivement. Toucher ces emplacements nécessiterait des autorisations root. Mais comme le logiciel Unix est conçu pour les utilisateurs multiples, vous pouvez le compiler et l’installer dans le $HOME
répertoire 2 et disposer de vos propres fichiers de configuration sous votre domicile, où vous pouvez les éditer librement sans être un super utilisateur.
En plus d'installer votre propre logiciel chez vous, la plupart des logiciels à l'échelle du système liront la configuration spécifique à l'utilisateur dès la $HOME
première lecture de la configuration /etc
. Cela vous permet de personnaliser presque tout sans jamais y aller root
.
Avec un PC à la maison, en un seul utilisateur principal, vous pouvez utiliser sudo
et accéder à ce que vous voulez. Mais il est de coutume de ne pas toucher à la configuration de l'application /etc
mais de toujours fournir une configuration spécifique à l'utilisateur chez soi. De cette façon, vous pouvez permettre à votre gestionnaire de paquets de réinitialiser les configurations à l’échelle du système lors des mises à niveau. L’installation d’un nouveau logiciel à l’échelle du système est plutôt acceptable dans le cas d’un utilisateur unique; les paquets de distribution n'assument pas les alternatives, c'est donc un moyen facile de s'en sortir.
Je laisserai mon gestionnaire de paquets installer les éléments globalement, mais je laisserai tous les éléments compilés à partir de sources et créés par mes soins $HOME
. Et je n'ai pas besoin de me demander quoi que ce soit.
Si vous avez des fichiers de données, un stockage en dehors de votre ordinateur $HOME
, n'hésitez pas à chown
ou
chgrp
les répertoires à votre nom afin que vous puissiez accéder aux fichiers sans
sudo
.
[1] (légèrement ironique étant donné qu'Unix était censé être une version «utilisateur unique» du système d'exploitation Multics)
[2] (si le système le permet en ne montant pas les partitions domestiques en tant que noexec)
sudo
tout ce qui implique de changer le système. Si vous ne travaillez que sur vos propres fichiers / postes de travail, vous n'affectez personne d'autre, vous n'avez donc pas besoin de privilèges élevés. Si vous exécutez des commandes privilégiées sans sudo, vous êtes probablement déjà un super utilisateur (c'est-à-dire un utilisateur root) et c'est généralement moins recommandé que d'utiliser sudo pour des tâches spécifiques à l'ensemble du système