Terminal WSL et choix d’un utilisateur Linux

Changer l’utilisateur par défaut de WSL — correction 2026

Terminal WSL et choix d’un utilisateur Linux
Terminal WSL et choix d’un utilisateur Linux.

Note de mise à jour — août 2026. Le premier article utilisait lxrun.exe, une commande de la toute première génération de Bash sous Windows. Microsoft classe désormais lxrun, bash et wslconfig.exe parmi les commandes WSL dépréciées. Ce guide les remplace par les méthodes actuelles et distingue bien trois notions souvent confondues : l’utilisateur Linux, la distribution Linux par défaut et la version WSL 1 ou WSL 2.

Dans le premier article BlackFury consacré à l’utilisateur par défaut de Bash sous Windows 10, j’avais découvert WSL avec un peu trop d’enthousiasme. Lors de la première configuration d’Ubuntu, j’avais saisi mon mot de passe à la place du nom d’utilisateur. Le résultat était aussi absurde que gênant : ce mot apparaissait comme identifiant dès l’ouverture de Bash.

La commande lxrun.exe /setdefaultuser permettait alors de corriger le problème. Elle n’est plus la bonne solution aujourd’hui. WSL a beaucoup évolué, plusieurs distributions peuvent cohabiter et une distribution importée ne se configure pas toujours comme une application Ubuntu installée depuis le Microsoft Store.

Voici donc une méthode actuelle, vérifiable et surtout réversible.

La réponse courte

Pour ouvrir ponctuellement une distribution avec un utilisateur précis, lancez PowerShell ou l’Invite de commandes et saisissez :

wsl --distribution <NomDistribution> --user <NomUtilisateur>

Exemple :

wsl --distribution Ubuntu --user alice

Pour rendre cet utilisateur permanent sur une distribution Ubuntu installée avec son lanceur :

ubuntu config --default-user alice

Pour une distribution importée, ou lorsqu’aucun lanceur de ce type n’est disponible, définissez plutôt l’utilisateur dans /etc/wsl.conf :

[user]
default=alice

L’utilisateur doit déjà exister dans la distribution. Après une modification de wsl.conf, terminez la distribution puis relancez-la :

wsl --terminate Ubuntu

Contrôlez enfin le résultat :

wsl --distribution Ubuntu -- whoami

Remplacez toujours Ubuntu et alice par les noms réellement présents sur votre machine.

Avant de changer quoi que ce soit : identifier le bon problème

WSL possède plusieurs réglages portant le mot « défaut ». Ils n’agissent pas au même endroit.

Ce que vous voulez changer Commande ou fichier concerné
l’utilisateur Linux ouvert dans une distribution lanceur ubuntu config --default-user ou /etc/wsl.conf
la distribution choisie quand vous tapez seulement wsl wsl --set-default <Distribution>
WSL 1 ou WSL 2 pour les prochaines installations wsl --set-default-version 2
WSL 1 ou WSL 2 pour une distribution existante wsl --set-version <Distribution> 2
le profil ouvert par défaut dans Windows Terminal réglage de démarrage de Windows Terminal

Changer la distribution par défaut ne change pas l’utilisateur de cette distribution. Modifier l’utilisateur WSL ne convertit pas non plus WSL 1 en WSL 2.

Étape 1 : faire l’inventaire de WSL

Ouvrez PowerShell ou Terminal Windows. Les commandes de diagnostic ci-dessous ne nécessitent normalement pas de fenêtre administrateur.

Lister les distributions installées

wsl --list --verbose

La forme courte est :

wsl -l -v

Vous obtenez le nom exact de chaque distribution, son état et sa version WSL. L’astérisque désigne la distribution choisie par défaut.

Exemple fictif :

  NAME            STATE           VERSION
* Ubuntu          Stopped         2
  Debian          Stopped         2

Recopiez le nom sans le modifier. Si le nom contient un espace, placez-le entre guillemets dans les commandes suivantes.

Vérifier l’état et la version de WSL

wsl --status
wsl --version

wsl --status indique notamment la distribution et la version choisies par défaut. wsl --version affiche la version du composant WSL et de son noyau lorsque la version moderne de WSL est installée.

Si wsl --version n’est pas reconnu, ne supposez pas que toute l’installation est cassée. Microsoft indique que cela peut signaler une ancienne version « intégrée à Windows » de WSL. Vérifiez d’abord wsl --help et la documentation correspondant à votre version.

Afficher l’utilisateur actuellement lancé

wsl --distribution Ubuntu -- whoami

Vous pouvez compléter avec :

wsl --distribution Ubuntu -- id
wsl --distribution Ubuntu -- pwd

whoami renvoie le nom du compte. id affiche son identifiant et ses groupes. pwd permet de vérifier le répertoire de départ réellement utilisé.

Étape 2 : vérifier que le nouvel utilisateur existe

L’utilisateur choisi doit exister dans la distribution concernée. Un compte Windows nommé alice ne crée pas automatiquement un compte Linux alice.

Pour vérifier un compte :

wsl --distribution Ubuntu -- id alice

Si la commande affiche un UID, un GID et des groupes, le compte existe. Si elle répond que l’utilisateur est inconnu, ne le définissez pas encore par défaut.

Les comptes Linux sont propres à chaque distribution. alice peut exister dans Ubuntu sans exister dans Debian, même si les deux distributions appartiennent au même compte Windows.

Créer un compte seulement si nécessaire

Sur Ubuntu et les distributions basées sur Debian, ouvrez ponctuellement la distribution comme root :

wsl --distribution Ubuntu --user root

Puis, dans le terminal Linux :

adduser alice

Suivez les questions affichées. Si ce compte doit pouvoir administrer Ubuntu avec sudo, ajoutez-le ensuite au groupe prévu par la distribution :

adduser alice sudo

Contrôlez le résultat avant de quitter :

id alice
getent passwd alice

Ces commandes de création sont adaptées à Ubuntu et Debian. D’autres distributions utilisent parfois un autre outil ou un autre groupe d’administration. Ne copiez pas mécaniquement sudo sur Alpine, Fedora, openSUSE ou une image personnalisée sans lire leur documentation.

Méthode A : utiliser le lanceur de la distribution

Microsoft documente la syntaxe suivante pour une distribution disposant de son lanceur :

<DistributionName> config --default-user <Username>

Avec Ubuntu et un utilisateur nommé alice :

ubuntu config --default-user alice

Cette commande ne se lance pas depuis Bash. Exécutez-la dans PowerShell ou dans l’Invite de commandes Windows.

Trouver le nom du lanceur

Le nom vu dans wsl -l -v et le nom de l’exécutable ne sont pas toujours identiques. Selon le paquet installé, le lanceur peut s’appeler ubuntu.exe, debian.exe ou porter une version dans son nom.

Pour chercher les lanceurs Ubuntu visibles par PowerShell :

Get-Command ubuntu*.exe

Pour Debian :

Get-Command debian*.exe

N’inventez pas un nom d’exécutable à partir du libellé de la distribution. Si aucun lanceur n’est trouvé, utilisez la méthode /etc/wsl.conf décrite plus bas.

Vérifier immédiatement

Fermez les fenêtres de cette distribution, puis exécutez :

wsl --terminate Ubuntu
wsl --distribution Ubuntu -- whoami

La seconde commande doit afficher le nouvel utilisateur.

Méthode B : modifier /etc/wsl.conf

Cette méthode est indispensable pour une distribution importée avec wsl --import, car ce type de distribution ne possède pas nécessairement de lanceur capable d’accepter config --default-user.

Le fichier /etc/wsl.conf règle une distribution précise. Il ne faut pas le confondre avec %UserProfile%\.wslconfig, qui applique des réglages globaux à la machine virtuelle WSL 2.

1. Ouvrir la bonne distribution comme root

Depuis PowerShell :

wsl --distribution Ubuntu --user root

L’option --user root est temporaire. Elle ne transforme pas encore root en utilisateur permanent.

2. Sauvegarder la configuration existante

Dans le terminal Linux :

if [ -f /etc/wsl.conf ]; then cp /etc/wsl.conf /etc/wsl.conf.blackfury-backup; fi

Affichez ensuite son contenu :

cat /etc/wsl.conf

Le fichier peut déjà contenir des sections comme [automount], [network], [interop] ou [boot]. Il faut les conserver.

3. Ajouter ou corriger la section [user]

Ouvrez le fichier avec l’éditeur disponible dans la distribution, par exemple :

nano /etc/wsl.conf

Ajoutez :

[user]
default=alice

S’il existe déjà une section [user], modifiez sa ligne default= au lieu de créer une deuxième section. Vérifiez aussi l’orthographe et la casse du nom avec id alice.

Enregistrez, puis quittez la distribution :

exit

4. Redémarrer proprement la distribution

Depuis PowerShell :

wsl --terminate Ubuntu

Cette commande arrête uniquement la distribution désignée. Si vous préférez redémarrer tout WSL :

wsl --shutdown

Attention : wsl --shutdown arrête toutes les distributions en cours et les processus qu’elles hébergent. Ne l’utilisez pas pendant une compilation, un serveur local, un conteneur ou une tâche non enregistrée.

Microsoft précise qu’une configuration modifiée n’est pas toujours relue dès la fermeture du terminal, car le sous-système peut continuer à tourner quelques secondes. --terminate ou --shutdown évite cette ambiguïté.

5. Contrôler la nouvelle session

wsl --distribution Ubuntu -- whoami
wsl --distribution Ubuntu -- pwd
wsl --distribution Ubuntu -- id

Le nom doit être correct, le répertoire de départ doit normalement être celui de l’utilisateur et ses groupes doivent correspondre aux droits attendus.

Ouvrir temporairement WSL avec un autre utilisateur

Il n’est pas toujours nécessaire de modifier le réglage permanent. Pour une opération ponctuelle :

wsl --distribution Ubuntu --user alice

Pour ouvrir temporairement une session root :

wsl --distribution Ubuntu --user root

Quittez-la dès l’opération terminée avec :

exit

Garder un compte ordinaire comme utilisateur par défaut limite les erreurs. Utilisez sudo pour les tâches administratives prévues par la distribution, plutôt que de travailler constamment en root.

Cas particulier : mot de passe Linux oublié

Le mot de passe Linux n’est pas nécessairement le mot de passe Windows. Il est propre au compte et à la distribution.

Pour la distribution par défaut, Microsoft propose d’ouvrir une session root depuis PowerShell :

wsl --user root

Pour cibler une autre distribution :

wsl --distribution Ubuntu --user root

Dans Linux, réinitialisez ensuite le mot de passe du compte concerné :

passwd alice

Saisissez le nouveau mot de passe deux fois, puis quittez :

exit

Quand Linux demande un mot de passe dans un terminal, aucun caractère ni astérisque ne s’affiche généralement pendant la saisie. C’est normal.

Cas particulier : un mot de passe a été saisi comme nom d’utilisateur

Changer l’utilisateur par défaut corrige l’ouverture de WSL, mais ne supprime pas l’ancien compte et n’efface pas son nom des fichiers ou de l’historique du système.

Si la chaîne utilisée était un vrai mot de passe :

  1. considérez-la comme exposée ;
  2. changez-la sur chaque service où elle a été réutilisée ;
  3. créez ou choisissez un compte Linux au nom normal ;
  4. vérifiez les fichiers appartenant à l’ancien compte avant toute suppression ;
  5. évitez de publier une capture montrant l’ancien identifiant.

Ne supprimez pas immédiatement le compte fautif. Des fichiers peuvent lui appartenir dans son répertoire personnel ou ailleurs. La migration des données et la suppression du compte méritent une sauvegarde et un contrôle séparés.

Si la modification ne fonctionne pas

« L’utilisateur n’existe pas »

Vérifiez-le dans la bonne distribution :

wsl --distribution Ubuntu -- id alice

Un utilisateur présent dans Debian n’existe pas automatiquement dans Ubuntu.

Le mauvais Ubuntu est modifié

Listez les noms exacts :

wsl --list --verbose

Une machine peut contenir plusieurs éditions ou plusieurs imports. Ciblez explicitement la distribution à chaque étape.

ubuntu config --default-user échoue

Assurez-vous que ubuntu.exe correspond réellement à la distribution visée. La commande par lanceur ne fonctionne pas pour une distribution importée ; passez alors par /etc/wsl.conf.

WSL ouvre toujours l’ancien compte

Contrôlez d’abord que /etc/wsl.conf contient une seule section [user] et que le nom existe. Terminez ensuite la distribution :

wsl --terminate Ubuntu

Puis relancez le contrôle avec whoami.

Windows Terminal semble ignorer le changement

Vérifiez la ligne de commande du profil Windows Terminal. Un profil peut imposer une distribution ou un utilisateur avec ses propres arguments. Testez d’abord la commande directement dans PowerShell pour séparer un problème WSL d’un problème de profil Terminal.

Le compte s’ouvre, mais sudo refuse l’accès

Être utilisateur par défaut ne donne pas automatiquement les droits d’administration. Vérifiez les groupes :

id

Sur Ubuntu, le compte initial appartient normalement au groupe sudo. Pour un nouveau compte, décidez explicitement s’il doit recevoir ce droit. Ne rendez pas chaque utilisateur administrateur par réflexe.

Le répertoire personnel n’est pas le bon

Contrôlez l’entrée du compte :

getent passwd alice

Puis :

echo "$HOME"
pwd
ls -ld "$HOME"

Ne lancez pas un chown -R aveugle sur un gros répertoire. Identifiez d’abord le propriétaire attendu, les fichiers concernés et les éventuels services qui les utilisent.

Revenir à l’ancien utilisateur

La modification est réversible. Avec le lanceur :

ubuntu config --default-user ancien_utilisateur

Avec /etc/wsl.conf, remplacez simplement :

[user]
default=alice

par le nom précédent, puis terminez la distribution avec wsl --terminate.

Si vous avez créé une sauvegarde du fichier :

cp /etc/wsl.conf.blackfury-backup /etc/wsl.conf

Ne confondez jamais ce retour arrière avec :

wsl --unregister Ubuntu

wsl --unregister désinscrit la distribution et supprime définitivement ses données, ses réglages et ses logiciels. Cette commande n’est pas une méthode de dépannage pour un simple problème d’utilisateur.

Checklist avant de fermer le dossier

  • le nom exact de la distribution a été copié depuis wsl -l -v ;
  • le nouvel utilisateur existe dans cette distribution ;
  • son répertoire personnel et ses groupes ont été vérifiés ;
  • l’ancien /etc/wsl.conf a été sauvegardé s’il existait ;
  • la distribution a été terminée puis relancée ;
  • whoami, pwd et id renvoient le résultat attendu ;
  • aucun compte ni fichier n’a été supprimé dans la précipitation ;
  • une chaîne utilisée par erreur comme identifiant a été traitée comme un secret exposé.

Ce qu’il faut retenir

L’ancienne commande lxrun.exe /setdefaultuser appartient à la première époque de Bash sous Windows. Avec WSL actuel, commencez par identifier précisément la distribution et le compte, testez l’utilisateur avec wsl --distribution ... --user ..., puis rendez le choix permanent avec le lanceur de la distribution ou avec /etc/wsl.conf.

La règle la plus importante est simple : ne réinstallez pas et ne désinscrivez pas une distribution pour corriger un nom d’utilisateur. Dans la plupart des cas, quelques commandes de diagnostic et une modification ciblée suffisent.

Pour retrouver les autres procédures de maintenance Windows du site, consultez l’index BlackFury Helper, en vérifiant toujours la date et la version du système concerné.

Sources officielles

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. Découvrez comment les données de vos commentaires sont traitées.