Qu'est-ce que Sudo sous Linux et comment l'utiliser

Considérez la bande dessinée ci-dessus de l'excellent webcomic XKCD . Le paresseux assis sur la chaise veut que son ami lui fasse un sandwich, mais il n'a pas le pouvoir de le lui faire faire. C'est-à-dire jusqu'à ce qu'il invoque la puissante commande sudo. Après quoi, un sandwich sera fait d'une manière ou d'une autre. 

Bien qu'essayer sudo sur une personne dans la vraie vie ne soit probablement pas aussi efficace, c'est la commande magique qui franchit tous les obstacles dans le monde de Linux . C'est quoi sudo ? Pourquoi existe-t-il même ? La réponse réside dans la façon dont Linux gère les autorisations.

Comprendre les autorisations des utilisateurs Linux(Linux User Permissions)

Linux est considéré comme un système d'exploitation sécurisé en raison de la façon dont il gère les autorisations. Alors que les systèmes d'exploitation tels que macOS (qui partageait un ancêtre avec Linux ) et Windows ressemblent désormais davantage à Linux à cet égard, le système d'exploitation Open Source est encore quelque peu unique.

Comprendre comment Linux gère les autorisations facilite grandement la compréhension de la commande sudo. Tous les systèmes d'exploitation modernes ont un niveau d'autorisation d'utilisateur « administrateur » ou « racine ». Si vous avez un compte administrateur ou root, vous pouvez modifier n'importe quel paramètre, supprimer n'importe quelle donnée et généralement faire ce que vous voulez avec l'ordinateur. 

Cela inclut des choses que vous ne devriez probablement pas faire et qui peuvent entraîner une perte de données ou la nécessité d'un nettoyage complet et d'une réinstallation.

Linux ne fait pas des autorisations de niveau utilisateur root la valeur par défaut. Au lieu de cela, votre compte ne peut pas accéder aux parties vraiment sensibles du système sans élever votre niveau d'autorisation. Cela signifie que le système vous demandera d'entrer le mot de passe administrateur lorsque vous voudrez faire quelque chose d'inhabituel à l'aide d'une interface graphique. 

Cependant, lorsque vous souhaitez utiliser la ligne de commande Terminal pour faire avancer les choses, sudo est le moyen le plus sûr et le plus efficace de s'y prendre.

Sudo et le Terminal

Il existe deux façons de vous accorder des autorisations élevées sous Linux . L'une consiste à se connecter en permanence en tant qu'utilisateur root. Le problème avec cela est que toute autre personne pouvant accéder à l'ordinateur peut faire des ravages, et même vous pouvez le faire par accident. Sudo n'élève vos autorisations que pendant une courte période pour exécuter les commandes spécifiques qui le suivent.

Syntaxe sudo

La syntaxe de Sudo (le format de la commande) est simple. Tapez simplement(Simply) "sudo" suivi de la commande que vous souhaitez exécuter.

Par exemple, "sudo apt-get update" mettra à jour tous les référentiels d'applications répertoriés dans le fichier correspondant. Si vous essayez de l'exécuter sans sudo, vous obtiendrez un message d'erreur vous indiquant que vous n'avez pas la permission. Incidemment, il s'agit généralement de la première commande sudo que vous voudrez exécuter après une nouvelle installation de votre distribution  Linux préférée.(Linux)

Le "Su" dans Sudo

Le "su" dans sudo est l'abréviation de "superutilisateur" et c'est une commande autonome. La commande "su" vous permet de changer les privilèges de l'utilisateur auquel sudo vous élève. 

Bien que sudo vous élève temporairement à la racine, su vous change en un autre utilisateur avec des privilèges appropriés. Cela peut sembler une distinction sans importance, mais il y a de bonnes raisons de changer le compte auquel sudo élève un utilisateur. 

Tout(First) d'abord, changer de compte signifie que les utilisateurs réguliers ne connaissent pas le mot de passe root. Deuxièmement, il existe un journal de toutes les commandes sudo, ce qui signifie que l'administrateur système (root) peut rechercher qui a émis les commandes su.

La syntaxe de su est essentiellement la même que sudo :

Su NOM D'UTILISATEUR -c COMMANDE(Su USERNAME -c COMMAND)

Remplacez USERNAME(Replace USERNAME) par l'utilisateur souhaité pour exécuter la commande et COMMAND par la commande Linux que vous souhaitez exécuter.

Si vous souhaitez exécuter plusieurs commandes en tant qu'autre utilisateur, utilisez simplement :

Su UTILISATEUR(Su USER)

Remplacez USER(Replace USER) par l'identité de compte d'utilisateur souhaitée.

Si vous utilisez su seul, Linux passera à l'autre compte d'utilisateur jusqu'à ce que vous utilisiez la commande "exit". Il est important de se rappeler ceci ou le prochain utilisateur à accéder au terminal dans cette session aura toujours des autorisations élevées. C'est pourquoi il est généralement préférable d'utiliser sudo plutôt que su.

La limite de temps Sudo

La première fois que vous utilisez une commande sudo, vous devrez entrer un mot de passe. Ensuite, ce mot de passe restera valide pendant 15 minutes. Vous pouvez modifier cette valeur par défaut en exécutant la commande sudo visudo et en modifiant "timestamp_timeout=" en une valeur plus longue ou plus courte. Cependant, nous vous déconseillons de le faire, sauf si vous avez une bonne raison de prolonger ou de raccourcir la durée de validité d'un mot de passe sudo.

Commutateurs d'options Sudo

Bien que la syntaxe sudo soit simple, plusieurs commutateurs méritent d'être connus. Ces commandes ouvrent des informations supplémentaires ou vous aident à contrôler la session sudo :

  • -h vous montre la syntaxe et les informations de commande pour sudo.
  • -V affiche la version actuelle de sudo sur votre machine.
  • -v actualise la limite de temps sudo, en redémarrant l'horloge.
  • -l répertorie les privilèges des utilisateurs.
  • -k tue immédiatement la session sudo en cours, supprimant les privilèges élevés.

Il existe de nombreuses autres options intégrées à sudo, et vous pouvez toutes les voir en utilisant le premier commutateur -h répertorié ci-dessus.

La capture d'écran ci-dessus est ce qui se produit lorsque vous utilisez l'option d'aide.

Commandes Sudo utiles

Alors, quelles commandes renforcées par sudo chaque utilisateur Linux devrait- il connaître ? Nous avons déjà couvert sudo apt-get update, mais notez-les également :

  • Sudo apt-get upgrade mettra à niveau tous les packages installés.
  • Sudo apt-get install <package-name> installe le logiciel de votre choix ; remplacez simplement le nom du package par celui que vous souhaitez installer.
  • Si vous ne connaissez pas le nom du package, utilisez dpkg –list .
  • Si vous souhaitez supprimer un package installé du terminal, utilisez sudo apt-get remove <package-name (en remplaçant à nouveau le nom du package spécifique en question).

Ce sont probablement les premières commandes sudo que vous devrez utiliser, mais comme vous l'avez appris ci-dessus, n'importe quelle commande peut suivre sudo, mais vous ne devez utiliser que celles qui nécessitent des privilèges plus élevés.



About the author

Je suis un développeur iPhone et macOS avec de l'expérience à la fois dans Windows 11/10 et dans la toute nouvelle plate-forme iOS d'Apple. Avec plus de 10 ans d'expérience, j'ai une compréhension approfondie de la façon de créer et de gérer des fichiers sur les deux plateformes. Mes compétences vont au-delà de la simple création de fichiers - j'ai également une solide connaissance des produits Apple, de leurs fonctionnalités et de leur utilisation.



Related posts