Quelles sont les différences entre Windows Bash et Cygwin?
La nouvelle mise à jour de Windows avec Bash "Linux" est nouvelle, mais quelles différences y a-t-il avec Cygwin qui pourrait vous amener à choisir l’une sur l’autre?
Quelles sont les différences entre Windows Bash et Cygwin?
La nouvelle mise à jour de Windows avec Bash "Linux" est nouvelle, mais quelles différences y a-t-il avec Cygwin qui pourrait vous amener à choisir l’une sur l’autre?
Réponses:
Cygwin est un excellent outil si vous souhaitez vivre entièrement sous Windows et piloter / automatiser des tâches Windows à l'aide de scripts bash. Cygwin ne peut toutefois pas exécuter de fichiers binaires Linux non modifiés.
C'est là qu'intervient WSL:
Le sous-système Windows pour Linux (WSL) est une nouvelle couche du noyau Windows qui vise à fournir un degré élevé de compatibilité avec l’ABI du noyau Linux. Cela permet aux binaires Linux ELF64 natifs, non modifiés, de s'exécuter sur WSL.
C’est ainsi que WSL peut exécuter une véritable distribution distante d’Ubuntu, ainsi que tous les paquets que vous téléchargez à partir d’apt-get, ou des paquets .deb d’ailleurs, sans aucune modification.
Le but de WSL est de permettre aux développeurs travaillant sur Windows d’exécuter de nombreux outils et de travailler sur de nombreux projets, qui dépendent de binaires Linux, de fonctionnalités, de comportements, de disposition du système de fichiers, de modèle de processus, etc.
Bien que WSL en soit encore aux premiers stades de son implémentation, nous travaillons d'arrache-pied pour améliorer l'étendue et la profondeur de nos implémentations syscall afin d'améliorer constamment la capacité de WSL à exécuter un ensemble toujours plus grand d'outils et à prendre en charge un nombre croissant de nœuds Ruby, Java et , etc. forfaits et projets.
Depuis la rédaction de ce qui précède, nous avons livré la mise à jour de Windows 10 Creators, mise au point qui MASSIVEMENT améliore la compatibilité de WSL avec BEAUCOUP d’outils que vous souhaitez / devez exécuter.
Le développement s'est également poursuivi sans relâche et nous avons envoyé les versions Win10 Insiders au cours des derniers mois, en prévision de la livraison de la Mise à jour des créateurs d'automne (FCU) en octobre 2017.
Dans FCU, nous ajoutons la possibilité d’installer et d’exécuter plus d’une distribution côte à côte: Ubuntu, openSUSE et SLES sont actuellement disponibles, avec Fedora et d’autres en cours. WSL prend également en charge les communications série USB, le montage de stockage USB et les partages réseau, ainsi que d’autres améliorations apportées à nos appels système, ce qui améliore la compatibilité avec davantage d’outils.
Les deux dernières années ont été très occupées depuis l'annonce et la publication de WSL, puis de la prise en charge de plusieurs distributions via le magasin et de l'annonce de WSL v1.0 HTH.
Lors de la construction 2019, nous avons annoncé le nouveau terminal Windows ( vidéo de session Terminal ici ) et WSL 2 ( vidéo de session WSL 2 ici ), qui introduit une toute nouvelle approche de l'exécution de Linux sous Windows.
Pour plus de détails et les mises à jour futures, visitez le blog Windows en ligne de commande toutes les deux semaines, où nous publions de nombreuses actualités connexes.
J'utilise WSL sous Windows 10 depuis quelques mois. Enfin, je peux démarrer Windows pour les jeux tout en continuant d'accéder à l'invite bash et d'exécuter CLI et de nombreux programmes d'interface graphique. Il existe des limitations, telles qu'aucun des répertoires virtuels familiers du noyau Linux. La planification est nécessaire pour partager le même script Bash entre Ubuntu et WSL sur une machine à double démarrage.
Il y a beaucoup de choses que j'aimerais voir améliorées, mais je peux vivre avec elles telles quelles pendant environ un an.
Une chose à garder à l'esprit est que Microsoft est un système fermé, et vous ne rencontrez pas le flot de tierces parties écrivant des mises à jour telles que vous les appréciez sous Linux. Mais toutes choses considérées, vous achetez un nouvel ordinateur portable et il est livré avec Windows 10 de toute façon afin que vous puissiez dire que c'est "gratuit" au moins :)
Cygwin est contrôlé par Red Hat Linux, qui n'est pas connu pour donner des choses gratuitement. Leur distribution "libre" de Fedora apparaît comme un "terrain d’essai" pour certains.
Cygwin a 15 ans de mises à jour. Il convient de noter que le même chef de projet est en place depuis 2003. Il y a beaucoup de mainteneurs à temps plein et beaucoup plus de contributeurs bénévoles.
WSL fournit des mises à jour majeures deux fois par an, chaque printemps et chaque automne. Des mises à jour mineures hebdomadaires sont disponibles pour les utilisateurs figurant sur la liste d'abonnement de développeurs. Bien que Microsoft dispose de ressources pour engager des milliers de personnes dans le développement WSL, il semble que vous puissiez compter les membres de l’ équipe avec vos doigts.
Vous verrez beaucoup de plaintes sur la vitesse WSL. Par exemple, la peinture d'écran prend beaucoup plus de temps dans Windows 10 que dans Ubuntu 16.04, autrement dit, vous pouvez voir le curseur bouger dans Windows 10:
Il faut environ 5 secondes à l'écran de démarrage WSL Bash pour peindre. Par comparaison, il faut environ 1 1/2 seconde pour le même écran de démarrage dans Ubuntu 16.04:
Cygwin a sa propre part de plaintes relatives à la vitesse avec Bash .
La réponse ici a un an, alors je pense qu’une petite mise à jour s’impose. Sous Windows 10 Home, s’il s’agit de Windows 32 bits, cela signifie qu’il n’exécutera pas le sous-système Ubuntu / Windows 64 bits comme Microsoft nous le dit ici ( sous-système Windows Linux dans Win10 HOME BASIC ).
C'est comme un rêve devenu réalité de faire fonctionner Ubuntu sous Windows avec son support de jeu supérieur pour Nvidia, mais avant de vous épuiser et d'acheter un ordinateur portable neuf (ou usagé), assurez-vous qu'il est doté de Windows 10 64 bits et non de la version domestique 32 bits si vous voulez exécuter Ubuntu / Linux de manière native sous Windows. Sur les sites Web de Microsoft, ils se réfèrent en fait à l'édition d'anniversaire de Windows comme condition préalable à l'exécution du sous-système Windows pour Linux.
Toutefois, si vous ne voulez pas débourser plus de 200 USD pour Windows 10 et que vous disposez d'un ordinateur portable plus ancien exécutant Windows 8.1 64 bits comme moi, et que vous disposez d'un ordinateur portable encore plus ancien exécutant Windows Vista 64 bits comme moi, alors Cygwin est la réponse.
Cygwin prend en charge plusieurs versions de Windows en tant que liste de leurs sites Web :
On peut s’attendre à ce que Cygwin s’exécute sur toutes les versions récentes et publiées de Windows. Etat janvier 2016, cela inclut Windows Vista, Windows Server 2008 et toutes les versions ultérieures de Windows jusqu'à Windows 10 et Windows Server 2016. La version 32 bits de Cygwin fonctionne également dans l'environnement WOW64 32 bits sur les versions 64 bits publiées de Windows, la version 64 bits. version bit bien sûr uniquement sous Windows 64 bits.
N'oubliez pas que Cygwin ne peut faire que ce que le système d'exploitation sous-jacent prend en charge. De ce fait, Cygwin se comportera différemment et présentera différentes limitations pour les différentes versions de Windows.