Aller au contenu
tricknfixGAMING · TECHNOLOGIE · INFORMATIQUE
Créer
#logiciels-applications·Question ouverteTutorial

« sudo » non reconnu ou désactivé sous Windows 11 : causes et solutions

0 réponse
Tutorial

Sudo pour Windows permet de lancer une commande avec les droits d'administrateur depuis un terminal ouvert normalement, par exemple sudo netstat -ab. Quand la commande ne répond pas comme prévu, le message affiché indique presque toujours la cause : Windows trop ancien, fonction non activée, fonction bloquée par une stratégie, ou mode de fonctionnement inattendu.

Problème

  • sudo « n'est pas reconnu » comme commande dans PowerShell ou l'Invite de commandes.
  • « Sudo is disabled on this machine. To enable it, go to the Developer Settings page in the Settings app ».
  • « Sudo is disabled by your organization's policy. »
  • La commande s'ouvre dans une autre fenêtre qui se ferme aussitôt, alors que vous attendiez le résultat dans la fenêtre actuelle.
  • sudo config répond « You must run this command as an administrator. »

Observer avant d'agir

Tapez winver (touche Windows + R, puis Entrée) et notez la version affichée. Microsoft indique que Sudo pour Windows est disponible à partir de Windows 11 version 24H2. Sous Windows 10 ou Windows 11 23H2, la commande n'existe pas.

Ce que vous constatezCause la plus probableÉtape
sudo n'est pas reconnu, Windows antérieur à 24H2Fonction absente de cette versionÉtape 1
« Sudo is disabled on this machine »Fonction non activée dans les ParamètresÉtape 2
« Sudo is disabled by your organization's policy »Stratégie de groupe ou gestion d'entrepriseÉtape 3
Nouvelle fenêtre qui se ferme, résultat invisibleMode par défaut « nouvelle fenêtre »Étape 4
« You must run this command as an administrator »sudo config lancé sans élévationÉtape 4

Étape 1 : vérifier que votre Windows prend en charge sudo

Quand l'utiliser : la commande sudo n'est pas reconnue du tout.

Solution proposée

  1. Vérifiez la version avec winver. En dessous de 24H2, installez d'abord les mises à jour proposées dans Paramètres > Windows Update, si votre PC est éligible.
  2. Si vous ne pouvez pas passer en 24H2, ouvrez simplement le terminal en administrateur : clic droit sur le bouton Démarrer, puis Terminal (admin).
  3. Microsoft cite aussi gsudo, un projet communautaire indépendant, pour ceux qui ont besoin d'options que Sudo pour Windows n'a pas. Ce n'est pas un outil Microsoft : vérifiez sa provenance avant de l'installer.

Résultat attendu : après passage en 24H2 ou version ultérieure, l'option sudo apparaît dans les Paramètres (étape 2).

Retour arrière : aucun, cette étape ne modifie rien.

Étape 2 : activer sudo dans les Paramètres

Quand l'utiliser : le message « Sudo is disabled on this machine » s'affiche.

Microsoft prévient que, dans certaines configurations, sudo peut servir de vecteur d'élévation de privilèges. Ne l'activez que si vous en avez réellement l'usage.

Solution proposée

  1. Ouvrez Paramètres > Système > Avancé (en anglais : System > Advanced). Sur certaines builds, l'option se trouve encore dans la page Pour les développeurs, celle que mentionne le message d'erreur.
  2. Activez l'option Activer sudo (en anglais : Enable sudo), puis validez la demande du Contrôle de compte d'utilisateur.
  3. Fermez et rouvrez le terminal, puis testez avec une commande qui demande des droits d'administrateur :
PowerShell3 lignes

sudo netstat -ab

Résultat attendu : une fenêtre du Contrôle de compte d'utilisateur s'affiche, puis la commande s'exécute avec élévation.

Retour arrière : désactivez la même option dans les Paramètres.

Étape 3 : sudo bloqué par une stratégie

Quand l'utiliser : « Sudo is disabled by your organization's policy », ou l'option est grisée dans les Paramètres.

La stratégie Microsoft Configure the behavior of the sudo command (fichier Sudo.admx, éditions Pro, Entreprise, Éducation et IoT) peut désactiver sudo ou imposer un mode. Elle s'appuie sur la valeur EnableSudo de la clé Software\Policies\Microsoft\Windows\Sudo : 0 = désactivé, 1 = nouvelle fenêtre forcée, 2 = entrée fermée, 3 = normal.

Solution proposée

  1. Lisez la valeur appliquée (lecture seule, sans rien modifier) :
PowerShell3 lignes

Get-ItemProperty -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows\Sudo' -ErrorAction SilentlyContinue
  1. PC professionnel ou scolaire : la valeur vient de votre organisation. Demandez au service informatique ; ne la modifiez pas vous-même.
  2. PC personnel sous Windows Pro : ouvrez gpedit.msc, puis Configuration ordinateur > Modèles d'administration > Système et cherchez la stratégie sudo. Si elle est sur Désactivé, repassez-la sur Non configuré, puis redémarrez.

Résultat attendu : la commande ne renvoie plus rien (aucune stratégie), et l'option redevient modifiable dans les Paramètres.

Retour arrière : remettez la stratégie dans l'état noté avant la modification.

Étape 4 : choisir le bon mode de fonctionnement

Quand l'utiliser : sudo fonctionne, mais pas comme vous l'attendez.

Microsoft décrit trois modes :

ModeComportementRemarque de Microsoft
forceNewWindow (par défaut)La commande s'ouvre dans une nouvelle fenêtreMode le plus prudent
disableInputLa commande s'exécute dans la fenêtre actuelle, sans pouvoir lire le clavierRisque réduit
normal (inline)Comportement proche de sudo sous Linux et macOSUn processus non élevé peut envoyer des entrées au processus élevé

Solution proposée

  1. Ouvrez Terminal (admin) : la configuration exige un terminal déjà élevé, sinon elle répond « You must run this command as an administrator ».
  2. Choisissez le mode, par exemple :
PowerShell3 lignes

sudo config --enable disableInput
  1. Remplacez disableInput par forceNewWindow ou normal selon votre besoin. Si une nouvelle fenêtre se ferme trop vite pour lire le résultat, disableInput affiche la sortie dans la fenêtre actuelle.

Résultat attendu : la commande suivante lancée avec sudo suit le mode choisi.

Retour arrière : sudo config --enable forceNewWindow (le mode par défaut).

Ce que sudo ne fait pas

  • sudo ne permet pas d'exécuter une commande sous un autre compte utilisateur : Microsoft indique que c'est le rôle de runas.
  • La demande du Contrôle de compte d'utilisateur reste obligatoire : sudo ne contourne pas la confirmation.
  • Les exemples de Microsoft lancent des programmes (comme netstat). Pour enchaîner plusieurs cmdlets PowerShell, un Terminal (admin) reste plus simple. Si un script est refusé, voir notre guide « L'exécution de scripts est désactivée » dans PowerShell.

Vérification finale

  • ☐ winver affiche Windows 11 version 24H2 ou ultérieure.
  • ☐ L'option sudo est activée dans les Paramètres.
  • ☐ Aucune stratégie EnableSudo à 0 n'est appliquée.
  • ☐ sudo netstat -ab déclenche le Contrôle de compte d'utilisateur, puis affiche le résultat.

Sources

Le problème continue ?

Répondez à ce sujet en indiquant la version affichée par winver, l'édition de Windows (Famille, Pro…), si le PC est géré par une organisation, la commande lancée et le message exact. Remplacez les noms d'utilisateur et de machine par des valeurs fictives.

Une idée, une piste ?

Soyez la première personne à rejoindre la discussion.

Répondre

Votre réponse sera conservée avant la connexion. Vous pourrez la relire avant de publier.

Votre réponse sera conservée pendant la connexion.

Les captures pourront être ajoutées après connexion.