Aller au contenu
Administration Linux medium

Utiliser sudo sous Linux

8 min de lecture

sudo permet d’exécuter une commande avec les privilèges de root sans se connecter en root. C’est le mécanisme standard pour administrer un système Linux en toute sécurité. Ce guide explique pourquoi on l’utilise, comment s’en servir et comment vérifier ses droits.

  • Pourquoi ne pas travailler en root
  • Exécuter une commande avec sudo
  • Ouvrir un shell root temporaire avec sudo -i
  • Vérifier ses droits avec sudo -l
  • Connaître les groupes sudo (Debian) et wheel (Red Hat)

Le compte root (UID 0) a tous les droits sur le système. Une simple faute de frappe peut avoir des conséquences irréversibles :

CommandeConséquence en tant que root
rm -rf /tmp/*Supprime le contenu de /tmp — normal
rm -rf / tmp/* (espace en trop)Supprime tout le système
chmod -R 777 /Rend tout le système accessible à tout le monde

En travaillant avec un compte normal et sudo, vous devez :

  • taper explicitement sudo avant chaque commande privilégiée,
  • entrer votre mot de passe,
  • ce qui laisse une trace dans les logs.

La syntaxe est simple — préfixez la commande avec sudo :

Fenêtre de terminal
sudo apt update

Le système demande votre mot de passe (pas celui de root). Après saisie, le mot de passe reste mémorisé quelques minutes pour éviter de le retaper à chaque commande.

Fenêtre de terminal
# Installer un paquet
sudo apt install htop # Debian/Ubuntu
sudo dnf install htop # Fedora/RHEL
# Modifier un fichier système
sudo nano /etc/hostname
# Redémarrer un service
sudo systemctl restart sshd
# Voir les logs système
sudo journalctl -n 50

Pour enchaîner plusieurs commandes en root, ouvrir un shell temporaire est plus pratique :

Fenêtre de terminal
sudo -i
Résultat
root@serveur:~#

Le prompt change : $ devient #. Vous êtes maintenant root.

Pour revenir à votre compte normal :

Fenêtre de terminal
exit
CommandeEffet
sudo -iShell root complet (charge le profil de root, $HOME = /root)
sudo -sShell root mais garde votre environnement ($HOME inchangé)

Pour un débutant, sudo -i est le choix le plus sûr car il démarre dans un environnement propre.

Pour voir ce que sudo vous autorise à faire :

Fenêtre de terminal
sudo -l
Résultat (utilisateur avec tous les droits)
L'utilisateur bob peut utiliser les commandes suivantes sur serveur :
(ALL : ALL) ALL

(ALL : ALL) ALL signifie : toutes les commandes, en tant que n’importe quel utilisateur, sur cette machine.

Si vous n’avez pas le droit d’utiliser sudo, le message sera :

Résultat (utilisateur sans droits sudo)
Désolé, l'utilisateur alice ne peut pas utiliser sudo sur serveur.

L’accès à sudo est contrôlé par l’appartenance à un groupe :

Le groupe s’appelle sudo :

Fenêtre de terminal
# Vérifier si vous êtes dans le groupe sudo
groups | grep sudo
Fenêtre de terminal
# Ajouter un utilisateur au groupe sudo (en tant que root)
sudo usermod -aG sudo alice

La configuration de sudo se trouve dans /etc/sudoers. Ce fichier définit qui peut exécuter quoi.

En tant que débutant, vous n’avez pas besoin de modifier ce fichier. Il suffit d’ajouter un utilisateur au groupe sudo ou wheel.

SymptômeCause probableSolution
bob n'est pas dans le fichier sudoersVotre compte n’est pas dans le groupe sudo/wheelDemander à l’administrateur de vous ajouter
sudo : commande introuvablesudo n’est pas installé (rare sur les distributions actuelles)Installer avec apt install sudo ou dnf install sudo en tant que root
Le mot de passe est refuséVous tapez le mot de passe root au lieu du vôtreEntrer votre mot de passe, pas celui de root
Le mot de passe est redemandé à chaque commandeLe délai de mémorisation a expiré (5 min par défaut)Comportement normal — retapez votre mot de passe
sudo -l ne retourne rienDroits limités dans /etc/sudoersVérifier avec l’administrateur
  • Ne travaillez pas en root au quotidien — utilisez sudo quand nécessaire.
  • sudo commande exécute une commande avec les privilèges root.
  • sudo -i ouvre un shell root temporaire — quittez avec exit.
  • sudo -l affiche vos droits sudo.
  • L’accès à sudo se contrôle via le groupe sudo (Debian) ou wheel (Red Hat).
  • Chaque commande sudo est tracée dans les logs système.

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracing. Aujourd'hui, ce site ne couvre même pas mes frais d'hébergement, d'électricité, de matériel, de logiciels, mais surtout de cafés.

Un soutien régulier, même symbolique, m'aide à garder ces ressources gratuites et à continuer de produire des guides de qualité. Merci pour votre appui.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn