Skip to content

Cvoii

Menu
  • Home
  • Apple
  • Clouding
  • Gear
  • Latest
  • Lifestyle
  • Notebook
Menu

Les différences entre Su, Sudo Su, Sudo -s et Sudo -i

Posted on January 10, 2022 by admin

Il existe de nombreuses façons d’obtenir une session root dans le terminal Linux. Cela peut créer une certaine confusion, car la plupart des utilisateurs débutants qui cherchent à obtenir des privilèges root peuvent ne pas savoir comment chaque commande peut obtenir un accès root, en quoi elles sont différentes et quand ces différences sont importantes. Ici, nous démontons chacune des nombreuses commandes différentes utilisées pour obtenir un accès root dans un terminal, expliquons comment elles obtiennent root, quand les utiliser et tout le reste.

le su La commande remplace l’utilisateur actuel que le système utilise dans le shell.

Vous pouvez passer à n’importe quel utilisateur en tapant su et en ajoutant un nom d’utilisateur après. Cela indiquera au système de basculer (et essentiellement de se déconnecter) de l’utilisateur actuel à celui spécifié. Alternativement, le su commande peut obtenir un accès root en entrant su sans rien spécifier après la commande.

“su” est mieux utilisé lorsqu’un utilisateur souhaite un accès direct au compte root sur le système. ça ne passe pas sudo ou quelque chose comme ça. Au lieu de cela, vous êtes invité à saisir le mot de passe de l’utilisateur root car vous vous y connectez littéralement. De plus, d’autres moyens d’obtenir un accès root n’ont pas l’avantage d’accéder également au répertoire de base et à l’environnement root.

Cette commande demande le mot de passe de l’utilisateur actuel par opposition à root.

C’est essentiellement la même chose que de courir su dans le shell, à l’exception d’une différence cruciale. Au lieu de dire au système de « changer d’utilisateur » directement, vous lui dites d’exécuter la commande « su » en tant que root. Lorsque sudo su est exécuté, « .profile », « .bashrc » et « /etc/profile » seront lancés, un peu comme lorsque vous exécutez su (ou su root). Si une commande est exécutée avec sudo devant lui, les privilèges root lui sont attribués.

Bien qu’il n’y ait pas une grande divergence entre “sudo su” et “su”, sudo su est toujours une commande très utile pour une raison importante : lorsqu’un utilisateur exécute « su » pour obtenir un accès root sur un système, il doit connaître le mot de passe root. La racine est donnée avec sudo su en demandant le mot de passe de l’utilisateur actuel. Cela permet de gagner root sans le mot de passe root ce qui augmente la sécurité.

Utilisant sudo -i est pratiquement le même que le sudo su commande à une exception près : elle n’interagit pas directement avec l’utilisateur root.

Un peu comme sudo su, la -i flag permet à un utilisateur d’obtenir un environnement root sans avoir à connaître le mot de passe du compte root. sudo -i est également très similaire à l’utilisation sudo su, car il lira tous les fichiers environnementaux (.profile, etc.) et définira l’environnement à l’intérieur du shell.

Là où il diffère de « sudo su », c’est que sudo -i est un moyen beaucoup plus propre d’obtenir un root et un environnement root sans interagir directement avec l’utilisateur root. Pour clarifier : Avec sudo su vous utilisez plus d’une racine setuid commande en arrière-plan. Cela rend beaucoup plus difficile de déterminer quelles variables environnementales seront conservées et lesquelles seront modifiées (lors du passage à l’environnement racine). Ce n’est pas vrai avec sudo -i. Pour cette raison, la plupart des gens le considèrent comme la méthode préférée pour obtenir la racine sans se connecter directement.

Cette commande invoque un shell avec votre variable $SHELL.

le -s Le commutateur pour la commande « sudo » lit la variable $SHELL de l’utilisateur en cours d’exécution des commandes. Cette commande fonctionne comme si l’utilisateur exécutait sudo /bin/bash. Sudo -s est un shell de style « sans connexion ». Contrairement à une commande comme sudo -i ou sudo su, le système ne lira aucun fichier environnemental. Lorsqu’un utilisateur demande au shell de s’exécuter sudo -s, il obtient la racine mais ne changera pas l’utilisateur ou l’environnement de l’utilisateur. Votre maison ne sera pas la maison racine, etc.

Cette commande est mieux utilisée lorsque l’utilisateur ne souhaite pas basculer en root mais souhaite un shell interactif avec sa valeur d’environnement $SHELL. Les autres commandes mentionnées ci-dessus obtiennent un accès root mais touchent les fichiers environnementaux root et permettent aux utilisateurs un accès plus complet à root (ce qui peut être un problème de sécurité).

Chaque commande a son cas d’utilisation. L’important ici est de comprendre ce que fait chaque commande et quand les utiliser. Tel qu’il est, sudo -i est le moyen le plus pratique et le plus propre d’obtenir un environnement racine. En revanche, ceux qui utilisent sudo -s découvriront qu’ils peuvent obtenir un shell racine sans avoir la possibilité de toucher l’environnement racine, ce qui présente des avantages supplémentaires en matière de sécurité.

Dans certains cas, oui. À moins que vous ne soyez absolument sûr de devoir accéder à root pour tout dans une session de terminal particulière, il est souvent préférable de simplement taper sudo suivi d’une commande si vous souhaitez accéder à root pour cette commande particulière. Par exemple, taper sudo apt install vlc dans n’importe quelle version de Linux basée sur Debian dirait au système d’exploitation d’accéder à la racine juste pour exécuter le gestionnaire de packages APT pour installer VLC.

Une mise en garde très importante pour courir sudo -i ou toute autre variante dont nous avons parlé plus tôt par opposition à la saisie sudo avant chaque commande que vous souhaitez exécuter en tant que root, la première n’enregistre pas l’historique de vos commandes dans /var/log/auth.log. Si vous vous trompez, vous ne pouvez pas revenir en arrière et vérifier ce que vous avez fait afin de pouvoir le corriger. Vous devrez opérer à court de mémoire, car les sessions root ne sont pas enregistrées.

En tappant sudo pour exécuter une commande (c’est-à-dire que vous la tapez sur la même ligne que la commande que vous souhaitez exécuter), vous l’exécutez essentiellement sous un shell racine interactif. Ce serait ce que le sudo -s la commande autonome le fait.

Il n’y a vraiment pas une commande sur cette liste qui soit la meilleure à 100%. Au fur et à mesure que les utilisateurs se familiariseront avec la ligne de commande, ils devront prendre en compte chaque façon de s’enraciner (et il y en a beaucoup), peser le pour et le contre et agir en conséquence. J’espère qu’avec l’aide de cet article, ces décisions seront plus faciles à prendre. Si vous souhaitez en savoir plus sur les commandes, lisez cet article sur les commandes Linux utiles pour lister le contenu d’un répertoire.

Recevez les mises à jour de nos derniers tutoriels.

Miguel est un expert en croissance d’entreprise et en technologie depuis plus d’une décennie et il écrit des logiciels depuis encore plus longtemps. Depuis son petit château en Roumanie, il présente des perspectives froides et analytiques sur les choses qui affectent le monde de la technologie.

Les différences entre les différentes commandes ne sont-elles pas ésotériques pour tous, sauf pour les utilisateurs CLI réguliers ? Les utilisateurs « réguliers » proverbiaux doivent-ils vraiment se préoccuper de ces subtiles différences ?

J’utilise occasionnellement « sudo command » pour des commandes uniques. Lorsque j’ai besoin d’un accès root plus long, je me connecte en tant que root. Oui, je me rends compte des pièges.

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Recent Posts

  • Comment ajouter des liens à vos histoires Instagram
  • Pocketnow Daily : Samsung Galaxy Z Fold 3 : NOUVEL appareil photo fou ?! (vidéo)
  • Deux autres centres de marché et de restauration fermés en raison de la transmission de Covid-19 parmi les étals et les travailleurs, Singapore News & Top Stories
  • L’iPad arrive dans les magasins Verizon le 28 octobre
  • Windows 11 Build 22000.100 (KB5004300) est livré avec des améliorations visuelles

Categories

  • Apple
  • Clouding
  • Gear
  • Latest
  • Lifestyle
  • Notebook
© 2023 Cvoii | Powered by Superbs Personal Blog theme