Installer le Bash Ubuntu sous Windows 10
Sommaire
I. Présentation
A la grande surprise de nombreuses personnes, Microsoft et Canonical (l'éditeur de la distribution Ubuntu) ont travaillé main dans la main afin de proposer la possibilité d'installer le Bash d'Ubuntu sous Windows 10.
Avec l'arrivée récente de Windows 10 Anniversary Update (version 1607, Build 14393), cette fonctionnalité est désormais disponible à tous ! Bien qu'elle soit encore en bêta, vous pouvez facilement l'installer. Cette portabilité du Bash sur Windows 10 n'est pas réservé seulement aux versions "Professionnel" et "Entreprise" puisque même avec la version "Familiale" vous pouvez en profiter !
Le Bash est bien natif à Windows, il ne s'agit pas de virtualisation ou même d'un container.
Dans ce tutoriel, nous verrons comment installer cette fonctionnalité qui nécessite au préalable l'installation du mode développeur, puis on testera ensemble quelques commandes 🙂
II. Activer le mode développeur
Ouvrez le menu démarrer sur Windows 10, et recherchez "développeurs". Vous devriez pouvoir sélectionner "Pour les paramètres de développeur" au sein des résultats.
Vous êtes directement amené au seins des paramètres liés aux fonctionnalités de développement. Il est nécessaire de passer en mode développeur en cliquant sur "Mode développeur" et acceptez l'avertissement qui s'affichera.
En fait, le Bash s'installe en arrière-plan à partir du Windows Store, et comme il n'est pas directement disponible sur le Windows Store, il faut passer dans ce mode pour pouvoir installer des paquets alternatifs.
Dès lors que le mode développeur est actif, passons à la deuxième étape.
III. Installer le Bash sur Windows
Au sein du panneau de configuration, puis "Programmes et fonctionnalités" nous allons ajouter une fonctionnalité à Windows. Cette fonctionnalité se nomme "Sous-système Windows pour Linux (bêta).
Pour l'ajouter, cliquez sur la gauche sur "Activer ou désactiver des fonctionnalités Windows", comme vous pouvez le voir sur la copie d'écran ci-dessous.
Suite à cette installation, vous devez redémarrer votre machine.
Quand elle sera redémarrée, dans la zone de recherche via le menu Démarrer, recherchez "bash" et "bash.exe" doit apparaître. Cliquez dessus pour débuter l'installation.
Une pseudo-invite de commande va s'ouvrir, tapez "o" pour indiquer que, oui, vous souhaitez réaliser l'installation. En arrière-plan, Windows va alors télécharger les paquets depuis le Windows Store.
Quand l'installation est terminée, la dernière étape consiste à définir un nom d'utilisateur et un mot de passe propre à l'utilisation du Bash Ubuntu. Ce compte est totalement indépendant de celui que vous utilisez sous Windows.
Le Bash Ubuntu est installé sur Windows 10 ! De nombreuses commandes devront s'exécuter de manière logique avec les droits super-utilisateurs, pour cela on indiquera "sudo" devant la commande.
Par exemple, pour mettre à jour la liste des paquets disponibles, on effectuera la commande :
sudo apt-get update
Voyez par-vous même le résultat :
Vous remarquerez rapidement que les volumes locaux sont montés dans /mnt/ dans un point de montage qui porte la lettre du volume. Par exemple, pour accéder au volume C: ce sera /mnt/c
A. Où sont stockées les données ?
Le Bash stocke ses données au sein de votre profil utilisateur, dans un répertoire nommé "lxss" que vous retrouverez à l'emplacement suivant : C:\Users\<utilisateur>\AppData\Local\lxss
On retrouvera notamment dans le home de l'utilisateur les fichiers habituels que sont .bashrc et .profile.
B. Quelques commandes
Pour information, voici quelques commandes que j'ai testé à l'occasion et qui fonctionne :
- Installer un paquet : sudo apt-get install <nom-du-paquet>
- Désinstaller un paquet : sudo apt-get remove <nom-du-paquet>
- Mettre à jour les paquets : sudo apt-get upgrade
Et il est même possible d'établir une connexion SSH avec un hôte distant ou encore d'utiliser RSync 🙂
Voilà, maintenant vous ne serez plus forcé d'utiliser Cygwin sous Windows pour réaliser certains tests et certaines intégrations, alors que cela pouvait-être nécessaire auparavant.
N'hésitez pas à partager en commentaire vos expériences et tests avec le Bash sous Windows.
j’ai eu du mal à trouver pourquoi je ne pouvais pas mettre à jour ni utiliser d’outils accédant à internet. Il s’avère qu’il a été nécessaire (en tout cas pour moi) de rajouter à /etc/resolv.conf la ligne : nameserver .
Je ne sais pas si c’est le fait de disposer d’un routeur en plus de mon box internet, mais bon maintenant, j’arrive à faire des mises à jour, à lancer des rsync…
Quelqu’un saurait comment lancer des scripts passant directement par le bash ? un fichier .sh ? Comment faire pour l’exécuter via l’explorateur ? Base de registre => .sh exécuté par la commande bash ??
Bonjour,
il faut lancer bash.exe en administrateur, sinon certaines commandes comme liées au réseau comme PING ne fonctionnent pas.
une fois lancé en mode administrateur, plus aucun soucis, j’arrive a installer et faire fonctionner Apache/MySQL/php :
sudo apt-get install lamp-server^
après installation, j’ai du insérer la ligne :
Servername localhost
dans /etc/apache2/apache2.conf
Et ca roule 😉
Bonjour,
J’ai oublié mon mot de passe, je n’arrive donc plus à télécharger quoique ce soit ( avec sudo ).
Y aurait il une personne sachant réinitialiser le mdp ?
merci d’avance! 🙂
regarde le wiki d’ubuntu
Bonjour,
Quand je tape « o » pour que lancer l’installation, il n’y a rien qui s’affiche, le téléchargement reste toujours sur 0%. Cela est dû à quoi?
Je vous remercie d’avance
Bonjour,
J’ai fait toutes les démarches nécessaires et j’ai réussi à faire tourner Bash normalement. Le seul problème c’est le stockage : je ne trouve pas le répertoire « lxss » …
Savez-vous pourquoi ? Je vous remercie à l’avance.
Moi non plus je n’ai pas ce répertoire. Comment procéder car je suis avec la build Insider 18917.
Merci par avance pour de plus amples renseignements.
Salut Florian,
Ce tuto m’a vraiment aidé car j’avais déjà fait plus d’un tout sans réussir à installer les commandes Ubuntu sous mon Windows 10.
Merci pour ce travail que vous abattiez pour nous autres qui ne sommes pas encore bien initiés.