Quais são as diferenças entre o Windows Bash e Cygwin?
A nova atualização do Windows com o "Linux" Bash é nova, mas que diferenças existem no Cygwin que podem fazer você escolher uma sobre a outra?
Quais são as diferenças entre o Windows Bash e Cygwin?
A nova atualização do Windows com o "Linux" Bash é nova, mas que diferenças existem no Cygwin que podem fazer você escolher uma sobre a outra?
Respostas:
Cygwin é uma ótima ferramenta se você deseja viver inteiramente no Windows e deseja conduzir / automatizar tarefas do Windows com scripts bash. No entanto, o Cygwin não pode executar binários Linux não modificados.
É aí que entra a WSL:
O Windows Subsystem for Linux (WSL), é uma nova camada do kernel do Windows que visa fornecer um alto grau de compatibilidade com a ABI do kernel do Linux. Isso permite que binários Linux ELF64 nativos, não modificados sejam executados no WSL.
É assim que a WSL pode executar uma distribuição de usuários do Ubuntu genuína e quaisquer pacotes baixados do apt-get ou pacotes .deb de outros lugares, sem nenhuma alteração.
O objetivo da WSL é permitir que os desenvolvedores que trabalham no Windows possam executar muitas das ferramentas e trabalhar em muitos projetos, que dependem de binários, recursos, comportamentos, layout do sistema de arquivos, modelo de processo etc.
Enquanto a WSL ainda está no início de sua implementação, estamos trabalhando duro para melhorar a amplitude e a profundidade de nossas implementações de syscall para melhorar constantemente a capacidade da WSL de executar um conjunto cada vez maior de ferramentas e suportar um número crescente de nós Ruby, Java. pacotes e projetos.
Desde que escrevemos o texto acima, enviamos a Atualização do Windows 10 Creators, que melhora MASSIVELY a compatibilidade da WSL com MUITAS das ferramentas que você deseja / precisa executar.
O desenvolvimento também continuou inabalável e enviamos versões do Win10 Insiders nos últimos meses a caminho do envio da Fall Creators Update (FCU) em outubro de 2017.
No FCU, estamos adicionando a capacidade de instalar e executar mais de uma distribuição lado a lado: Ubuntu, openSUSE e SLES estão atualmente disponíveis, com o Fedora e outros a caminho. Agora, a WSL também suporta comunicações serial USB e montagem de compartilhamentos de rede e armazenamento USB, além de outras melhorias em nossos syscalls, o que melhora a compatibilidade com mais ferramentas.
Faz dois anos muito ocupados desde o primeiro anúncio e lançamento da WSL, a adição de suporte para várias distribuições via loja e o anúncio do WSL v1.0 HTH.
No Build 2019, anunciamos o novo Windows Terminal ( vídeo da sessão do Terminal aqui ) e o WSL 2 ( vídeo da sessão do WSL 2 aqui ), que apresenta uma nova abordagem para a execução do Linux no Windows.
Para obter mais detalhes e atualizações futuras, visite o blog da Linha de Comandos do Windows a cada duas semanas, onde publicamos muitas notícias relacionadas
Uso o WSL no Windows 10 há alguns meses. Finalmente, posso inicializar o Windows para jogar e ainda acessar o prompt do bash e executar a CLI e muitos programas da GUI. Existem limitações, como nenhum dos diretórios virtuais familiares do kernel Linux. É necessário planejar o compartilhamento do mesmo script Bash entre o Ubuntu e o WSL em uma máquina de inicialização dupla.
Há muitas coisas que eu gostaria de ver melhoradas, mas posso conviver com isso daqui a um ano ou mais.
Uma coisa a lembrar é que a Microsoft é um sistema fechado e você não tem a agitação de terceiros escrevendo atualizações como você gosta no Linux. Mas, considerando tudo, você compra um laptop novo e ele vem com o Windows 10 de qualquer maneira, então você pode dizer que é pelo menos "gratuito" :)
O Cygwin é controlado pelo Red Hat Linux, que também não é exatamente conhecido por oferecer coisas de graça. Sua distribuição Linux "gratuita" do Fedora parece um "campo de teste" para alguns.
Cygwin tem 15 anos de atualizações. Notável é o mesmo gerente de projeto em funcionamento desde 2003. Existem muitos mantenedores em tempo integral e muitos mais colaboradores voluntários.
A WSL fornece grandes atualizações duas vezes por ano a cada primavera e outono. As atualizações secundárias semanais estão disponíveis para aqueles na lista de assinantes Developers. Embora a Microsoft tenha recursos para lançar milhares de pessoas no desenvolvimento da WSL, parece que você pode contar os membros da equipe com os dedos.
Você verá muitas reclamações sobre a velocidade da WSL. Por exemplo, a pintura da tela leva muito mais tempo no Windows 10 do que no Ubuntu 16.04, ou seja, você pode realmente ver o cursor se mover no Windows 10:
Demora cerca de 5 segundos para a tela inicial do WSL Bash pintar. Em comparação, são cerca de 1 1/2 segundos para a mesma tela inicial no Ubuntu 16.04:
Cygwin tem sua própria parcela de reclamações de velocidade com o Bash .
A resposta aqui é de um ano, então acho que uma pequena atualização está em ordem. Com o Windows 10 Home, se for Windows de 32 bits, significa que não será executado o Ubuntu / Windows Subsystem de 64 bits, como a Microsoft nos diz aqui: ( subsistema Windows Linux no win10 HOME BASIC ).
É como um sonho tornado realidade ao executar o Ubuntu no Windows com seu suporte superior a jogos para a Nvidia, mas antes de você comprar um laptop novo (ou usado), verifique se ele possui o Windows 10 de 64 bits e não a versão inicial de 32 bits, se você deseja executar coisas do Ubuntu / Linux nativamente no Windows. Nos sites da Microsoft, eles se referem à edição do Windows Anniversary como um pré-requisito para a execução do Windows Subsystem for Linux.
No entanto, se você não deseja desembolsar mais de US $ 200 + para o Windows 10 e possui um laptop mais antigo executando o Windows 8.1 de 64 bits como eu, e um laptop ainda mais antigo executando o Windows Vista de 64 bits como eu, o Cygwin é a resposta.
O Cygwin suporta mais versões do Windows conforme suas listas de sites :
Pode-se esperar que o Cygwin seja executado em todas as versões modernas e lançadas do Windows. Estado de janeiro de 2016, que inclui o Windows Vista, Windows Server 2008 e todas as versões posteriores do Windows até Windows 10 e Windows Server 2016. A versão de 32 bits do Cygwin também é executada no ambiente WOW64 de 32 bits nas versões lançadas de 64 bits do Windows, o 64 versão de bit, é claro, apenas no Windows de 64 bits.
Lembre-se de que o Cygwin pode fazer apenas o que o SO subjacente suporta. Por esse motivo, o Cygwin se comportará de maneira diferente e exibirá limitações diferentes nas várias versões do Windows.