Microsoft améliore le sous-système Linux de Windows 10
Pour couvrir la majorité des scénarios auxquels font face les développeurs chaque jour

Le , par Coriolan

88PARTAGES

11  0 
À l’approche de sortie de Windows 10 Creators Update, on apprend que cette mise à jour majeure de l’OS va être dotée également du sous-système Linux de Windows 10, une option n’a pas manqué de faire l’objet d’un nombre considérable d’éloges de la part des développeurs, surtout ceux qui ont dû migrer de Mac OS.


L’une des raisons de l’implémentation de WSL (Windows Subsystem for Linux) sur Windows est d'offrir aux utilisateurs une expérience similaire à celle de Bash sur Linux, c’est d’ailleurs la raison pour laquelle l’option est souvent appelée « Bash sur Windows ». Mais WSL a des objectifs qui vont bien au-delà d’avoir Bash comme un Shell alternatif sur Windows ; Bash constitue l’étape préliminaire de l'implémentation de tous les outils de la ligne de commande de Linux sur Windows.

WSL constitue « un environnement compatible avec Linux qui ressemble et agit juste comme Linux, il vous permet d’exécuter tout votre code Linux — votre système build Linux, vos outils GNU et tout ce que vous devez exécuter ; créez et testez votre application sans avoir à recourir à une machine virtuelle », a dit Rich Turner de Microsoft. WSL utilise toujours le noyau Windows ; WSL s’appuie sur le noyau Windows ; le sous-système l’utilise pour exécuter les appels du système ELF64 sur lesquels dépendent les binaires de Linux.

Microsoft a pris la décision de placer WSL dans Windows largement pour répondre aux besoins des développeurs. En effet, de nos jours, une variété d’outils open source, des langages de programmation et des bibliothèques assument que les développeurs utilisent Linux. « Beaucoup de ces [outils] ont des dépendances de Linux, la couche du système de fichier Linux, les mécanismes d’interaction réseau de Linux, etc. Ce qui a fait que beaucoup de ces outils ont trouvé du mal à bien fonctionner sous Windows, parce que l’OS a une approche un peu différente lorsqu’il s’agit de réaliser ces tâches. »

Les langages comme node, Python et Ruby fonctionnent très bien sur Windows. Mais si vous voulez accéder aux mêmes gems, paquets, bibliothèques et modules que vous utilisez sur Linux, alors vous aurez les mêmes outils. Il ne s’agit pas seulement d’assurer la compatibilité comme le feraient des outils comme Cygwin et MSYS, car cela n’aide pas vraiment lorsqu’il s’agit de paquets binaires.

« Beaucoup des gems de Ruby sont compilés et les gens en deviennent dépendants, ce qui crée des problèmes sur Windows. Ces gems s’attendent à ce que les fichiers soient dans un chemin d’accès particulier, et sur Windows, c’est tout à fait différent. Nous avons besoin de la capacité de charger et exécuter des binaires de Linux sans modification, » a dit Turner.

L’idée n’est pas de transformer Windows en Linux, mais donner la possibilité aux développeurs d’utiliser les outils auxquels ils dépendent pour réaliser leur travail en plus des outils de Microsoft comme Visual Studio.

Il ne s’agit pas aussi de délaisser Linux sur le bureau, a dit Dustin Kirkland, responsable du développement de Microsoft Ubuntu chez Canonical. « Je vois ça comme une belle approche d’introduire la façon avec laquelle communiquent UNIX et Linux avec un ordinateur à travers la ligne de commande, comme une passerelle vers des dizaines de milliers d’outils open source. On ne pouvait pas rater l’opportunité de délivrer Linux et l’open source à des milliards d’utilisateurs de Windows. »

Kirkland a été lui-même ébloui par la réussite du projet alors qu’il utilisait Visual Studio pour créer l’image d’Ubuntu pour WSL. Il a dû changer un terme spécifique dans 17 fichiers différents. Au lieu de recourir à une interface graphique à laquelle il n’était pas familiarisé, il a réalisé qu’il peut utiliser les commandes grep et sed sur le projet dans Windows, soit la même solution qu’Ubuntu.

« Les deux ont vraiment bien fonctionné ensemble. Je suis plus confortable dans vi que sur un éditeur graphique, alors avoir la capacité de sauter vers une fenêtre vi et créer et modifier les fichiers nativement, utiliser ssh nativement sur le système, c’est super puissant », dit-il.

Une utilisation à base quotidienne

Beaucoup de développeurs ont essayé WSL lors de ses débuts et ont été un peu déçus. Mais il faut savoir que la version du sous-système Linux implémentée dans l’Anniversary Upade de Windows 10 a été en fait une préversion destinée à collecter les avis des développeurs sur les outils qu’ils aimeraient exécuter avec WSL.

« Vous ne pouviez pas envoyer un ping, vous ne pouviez pas jeter un coup d’œil sur votre ifconfig pour voir la configuration de votre réseau. On ne pouvait pas exécuter Java, on ne pouvait pas exécuter npm du fait qu’il était incapable d’énumérer la configuration du réseau. Tout ça est possible maintenant, et nous pouvons exécuter MySQL, Postgres, Apache, Nginx, node, Ruby, Java, Python et même Core CLR fonctionne avec ASP.NET. »

Dans la Creators Update, les outils clés comme ssh et GDB GNU debugger fonctionnent mieux. Et vous pouvez configurer WSL comme une cible pour Visual C++ pour Linux dans Visual Studio, pour que vous puissiez modifier et déboguer visuellement avant de compiler dans WSL.

Canonical assure la maintenance des images du mode utilisateurs que Windows 10 télécharge lors du premier lancement de Bash. Jusqu’à présent, ces images ont été celles d’Ubuntu 14/04, avec une nouvelle image prévue tous les trois mois (Microsoft a suggéré que cette fréquence est la plus optimale pour les utilisateurs, a noté Kirkland). Avec la Creators Update, ils passeront à Ubuntu 16.04 (Xenial, la version lancée en avril dernier).

Il s’agit d’une énorme amélioration, puisque cela veut dire que les nouvelles versions des bibliothèques les plus utilisées, les compilateurs et les utilitaires, seront disponibles et supportées nativement.

Ubuntu 16.04 sera installé par défaut si vous utilisez WSL sur la Creators Update pour la première fois. Si vous avez déjà 14.04, Windows ne va pas mettre à jour votre distribution. Turner a expliqué que cette décision a été prise pour répondre aux requêtes des développeurs qui ont demandé à ce que la mise à jour ne soit pas automatique. Si vous vous voulez une nouvelle instance 16.04, utilisez `lxrun /uninstall /full` pour effacer votre instance Ubuntu et réinstallez la avec `lxrun install.`

La Creators Update apporte également d’autres améliorations, comme le support de la souris dans la console (avec l’ajout des couleurs 24-bit). Elle intègre et rapproche aussi les environnements de Windows et WSL. « Vous pouvez exécuter une commande sur le système Ubuntu qui affecte le système Windows », a expliqué Kirkland ; « pour que vous ayez la possibilité de modifier les fichiers en temps réel et avoir les fichiers mis à jour dans Notepad et vi, ou vous pouvez lancer une application sur Linux qui réalise ces changements dans Windows et vice versa. »

L’intégration veut dire aussi que les processus de Linux peuvent être vus sur le gestionnaire des tâches de Windows. « Si par exemple vous exécutez MySQL, vous pouvez voir son processus sur le gestionnaire des tâches », a dit Turner.

De cette façon, si jamais vous êtes face à un problème (une erreur de script sur Bash par exemple), vous n’aurez qu’à sélectionner le processus correspondant et le supprimer. Les outils de contrôle du réseau et du système peuvent aussi voir les processus WSL, du fait qu’ils sont exposés à l’interface de gestion de Windows et qu’ils utilisent le stack de réseau Windows et le pare-feu de l’OS. Les entreprises pourraient avoir besoin de cette possibilité pour utiliser leurs outils de contrôle avec les processus de WSL ainsi que ceux de Windows.

Le développement concerne la ligne de commande

Maintenant que le sous-système de Linux pour Windows est devenu plus mature et couvre la majorité des scénarios auxquels font face les développeurs chaque jour, Turner explique que le développement va continuer à apporter des mises à jour et des améliorations pour répondre aux requêtes des développeurs. Toutefois, il ne faut pas s’attendre à ce que WSL supporte officiellement Linux desktop.

« Nous avons été clairs depuis le début que la raison pour laquelle nous sommes en train de développer WSL est de fournir un environnement pour les développeurs pour qu’ils puissent faire leur travail. Il y a des outils GUI Linux qui peuvent être utilisés par les développeurs, mais la majorité des outils qu’ils veulent sont les compilateurs, les débogueurs… nous nous concentrons seulement sur les outils et les scénarios présents sur la ligne de commande. »

Source : The New Stack

Et vous ?

Utilisez-vous le sous-système Linux de Windows 10 ? comment trouvez-vous l’expérience utilisateur ?

Voir aussi :

Windows 10 : la version stable du Creators Update est disponible en téléchargement, avant la date de sortie qui aurait été prévue

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de Sodium
Membre extrêmement actif https://www.developpez.com
Le 05/04/2017 à 9:11
Quid du support du sshfs dans cette mise à jour ?

Franchement, je ne vois pas l'intérêt d'utiliser bash et les autres outils GNU sous Windows. Il est très facile d'installer une machine virtuelle et d'y faire ses développements. De plus, s'il s'agit de développements avec les outils GNU, leur destination finale est un serveur exécutant une version native de GNU/Linux. Il y aura donc une phase de qualification sur la plateforme native. Donc, aucun intérêt aux outils GNU sous Windows. Et puis, on peut tout-à-fait travailler avec un poste de travail sous GNU/Linux, quitte à se connecter à un TSE pour avoir accès aux outils spécifiques Windows.
L'intérêt justement c'est de ne pas avoir à jongler entre Windows et une machine virtuelle qui de plus pompe de la RAM. Je trouve certaines fonctionnalités du terminal linux très pratiques mais je préfère très largement l'ergonomie de Windows.
4  0 
Avatar de Drone
Membre régulier https://www.developpez.com
Le 04/04/2017 à 14:34
L'intérêt est multiple, personnellement j'ai déjà hâte de pouvoir utiliser un serveur SSH "natif" et fonctionnel sur Windows.
3  0 
Avatar de Aurelien.Regat-Barrel
Expert éminent sénior https://www.developpez.com
Le 05/04/2017 à 18:10
Citation Envoyé par CaptainDangeax Voir le message
Franchement, je ne vois pas l'intérêt d'utiliser bash et les autres outils GNU sous Windows. Il est très facile d'installer une machine virtuelle et d'y faire ses développements.
Une VM c'est lourd et pénible à utiliser. Là tu as bash qui tourne dans sa propre console, qui se lance en moins d'un seconde, et les fichiers sont directement accessibles depuis l'explorateur Windows.

Mais tout ça n'est certainement qu'un début. C'est d'abord une réponse aux développeurs tentés de quitter Windows pour Mac parce que ce système offre une expérience Unix beaucoup plus fluide (y'a qu'à voir le nombre de Mac dans une conf de dév!).

On peut rêver à ce qu'ils implémentent un serveur X11 et qu'on puisse avoir les applis graphiques Linux ouvertes côte à côte avec les applis Windows...

On peut s'attendre à pouvoir lancer Docker... et alors là...
2  0 
Avatar de micka132
Expert confirmé https://www.developpez.com
Le 08/08/2017 à 19:35
Citation Envoyé par obs-psr Voir le message
C'est le résultat de +40 ans de developement de l'os et des systèmes de fichiers, pas d'un miracle et vu
le nombre et la qualité des mecs qui ont et qui bossent encore cela parrait assez normal.
Parceque les gus de chez Microsoft sont forcement des bras cassés. Franchement j'ai pas tout l'historique de qui y sont passés mais actuellement par exemple, si tu ne jure que par les dev Linux, il y a le co-fondateur de Gnome qui y travail.

Tu dois connaitre Android? Un OS sur lequel tu ne peux pas faire grand chose en tant qu'utilisateur, ou tu dois télécharger tout depuis un serveur centralisé et ou chaque application est verifié. Un OS avec en theorie infiniment moins de surface d'attaque qu'un windows classique, se retrouve lui aussi infesté de merde. Comme quoi, linux ou pas linux, c'est pareil. La différence c'est le nombre d'utilisateur, qui lui va attirer les hackeurs.
2  0 
Avatar de
https://www.developpez.com
Le 16/10/2017 à 11:18
J'ai deux questions, dont une pas sérieuse :

  • Quelle système/logiciel/service/daemon peut-être le gestionnaire d'utilisateurs ou d’authentifications ou de sessions ?
    • Distant ?
    • En local ?
    • Virtualisé ?

  • Il est possible d'installer Steam for Linux et de rendre tous les jeux Windows Compatible Steam for Linux ?


[spoiler]
Étrangement, sans SAMBA les réseaux Linux/UNIX et Microsoft semble être isolé l'un de l'autre même en exploitant la virtualisation.
[/spoiler]
2  0 
Avatar de Spleeen
Membre régulier https://www.developpez.com
Le 31/07/2017 à 11:09
Du coup, j'ai deux questions : est-ce que l'option sera activé par défaut et est-ce que ça va accélérer les logiciels de virtualisation, type VmWare (lorsque que c'est du Linux derrière) ?
1  0 
Avatar de redcurve
Membre confirmé https://www.developpez.com
Le 31/07/2017 à 11:42
Citation Envoyé par Spleeen Voir le message
Du coup, j'ai deux questions : est-ce que l'option sera activé par défaut et est-ce que ça va accélérer les logiciels de virtualisation, type VmWare (lorsque que c'est du Linux derrière) ?
Non la PAL linux n'est pas activée par défaut, accélérer des logiciels ça dépend, perso je l'utilise pour miner du zcash.
1  0 
Avatar de Aiekick
Membre extrêmement actif https://www.developpez.com
Le 31/07/2017 à 17:37
cool je vais pouvoir jouer a wow depuis wine sur win10
1  0 
Avatar de obs-psr
Nouveau Candidat au Club https://www.developpez.com
Le 08/08/2017 à 19:03
Citation Envoyé par micka132 Voir le message
Faut dire que ton poste ne presentait pas mieux qu'un bon troll en costume. T'aurais pu au moins détailler quelles sont les aspects non sécuritaires de l'OS...
Ma foi ... la semaine n'y suffirait pas ! et TOUT le monde le sait ... et sait pourquoi !

Faire tourner un soft genre SolidWorks sous XP en lançant un script qemu-kvm d'une ligne --> ca boote en
5 sec sur une machine Xeon + 12 Meg et ça, c'est vraiment utile et bleuffant ! ...

Essayer de faire tourner Linux sous Windows ... on peut ne pas comprendre.

J'argumente :
Si les gens veulent utiliser bash, sed, lex, emacs, gcc, gfortran, git, vim ... cela veut peut-être dire qu'ils savent s'en servir
et que cela leur manque; mais alors l'OS, lui, l'honorable Kernel qui demarre tout seul, (t'as pas besoin de savoir faire
grand chose pour t'en servir) ??? Non, lui faut pas s'en servir !! Ah ... c'est vrai Notepad est sous Wine

Je rappelle que sur les ~600 machines HPC dans le monde ~580 sont sous Linux, que le niveau de
sécurité est quasi parfait, à part pour ceux qui ont admin:admin comme login:password et Hélène de Troie ...

C'est le résultat de +40 ans de developement de l'os et des systèmes de fichiers, pas d'un miracle et vu
le nombre et la qualité des mecs qui ont et qui bossent encore cela parrait assez normal.

Je ne voulais en aucun cas troller la dessus mais ... une petite piqure de rappel c'est toujours bon en 2017
pour la migration vers Mageia-6, ubuntu et autres Debian, la fin des reboot, pannes et virus et enfin uitiliser
les machines pour travailler. Pour moi c'est la paix royale pour l'astronomie/astrophysique depuis 1991.

Donc, pas de troll mais restons logiques, objectifs et souriants.
"Il y aura une vie après M$"
Serge.
1  0 
Avatar de obs-psr
Nouveau Candidat au Club https://www.developpez.com
Le 10/08/2017 à 14:34
Citation Envoyé par micka132 Voir le message
Mais tu le fais expres? Pourquoi tu compares des machines ou personne n'accede sans avoir passer 12 000 portes (physique) et l'ordinateur connecté de monsieur tout le monde?
L'equivalent linux de windows c'est Android, et c'est un egalement un vrai merdier niveau securité. Je vais pas pour autant dire Linux c'est une passoire...non c'est comme tout logiciel, et meme comme toute réalisation humaine, y a des failles.
Si la porte de ta maison n'a jamais était fracturé ca n'en fait pas une super porte que toute les banques devrait utiliser...
Bon, on va arrêter là, car je ne fais rien "expres" !
Android dispose d'un noyau Linux 3 et plus ... des mêmes façilités que tout systême linux. Encore faut-il
savoir s'en servir; je parle des milliers de mecs qui font des "Appli", comme ils disent !

Manifestement tu n'as aucune idée du "monde" qui sépare les 2 platformes, et donc du tas de méthodes qui font la sécurité d'un
système Linux dont personne ne s'est jamais plaint au niveau secu.

D'ailleurs ton exemple est très amusant ... j'ai appris que les Banques avaient des portes Fichet, j'en ai donc mise une chez moi et
j'ai pas essayé de réinventer une porte

Vous êtes beaucoup et je ne t'en veux pas, à mélanger les "failles" révellées par des gourous du code, corrigées dans les 24 h par les
mainteneurs et que personne n'aura jamais le temps ni le loisir d'exploiter, avec les pannes grossières consécutives au developpement
anarchique (toujours sur la deadline) des produits M$ qui refuse toute mutation.

Leurs méthodes sont perpétuellement contraires à toutes les règles, techniques et ce depuis WIN 3.0. et ce n'est pas dû aux programmeurs
mais à leur chefs et aux directives du marché maison.

Les problèmes ont démarré avec les vols de soft (depuis le DOS et Dos6.0) les affaires autour de Java (ils allaient encore imposer des versions à la
con non standards) ... ca ne finira jamais.

Des années de Skype en peer to peer --> lls rachètent Skype et ont pourri l'interface, ils sont complètement
"in-foutus" de nous laisser le partage d'écran (qui marchait au poil) et depuis le 1er Juillet tous les téléphones Skype sont foutus ...
On va rigoler quand les troupeaux d'avocats US vont essayer de défendre les boites qui payaient un système de téléphonie Skype ...
AUCUNE solution de remplacement ne nous est fournie, même pas pour les 10 Euros qui me restaient sur le compte !

C'est pour cela que nous avons largué ce nid à problème il ya plus de 20 ans sans aucun regret !

Bon, j'arrête, ca m'apprendra à commenter les NEWS avec les gourous de ".Net"

Bonne semaine,
Serge.
1  0 
Contacter le responsable de la rubrique Accueil

Partenaire : Hébergement Web