Entendo que atualmente é possível executar o Ubuntu no Windows 10 de duas maneiras diferentes:
- Usando o Subsistema Windows para Linux (WSL).
- Instalando a janela de encaixe para Windows 10 e use um contêiner com o Ubuntu.
No entanto, não consegui encontrar uma explicação fácil de entender sobre quais são as diferenças entre eles (falando sobre aplicativos), bem como vantagens e desvantagens.
Eu encontrei um post falando sobre o uso do docker na WSL: Ubuntu via (Windows Linux Subsystem) e Docker . Mas estou falando sobre usá-lo diretamente no Windows 10. Portanto, aprecio qualquer informação sobre esses dois.
Respostas:
Atualizado 2020/02/18 para refletir as alterações introduzidas na WSL2
Oi! Microsoft PM trabalhando em WSL e linha de comando aqui.
A WSL permite executar binários Linux ELF-64 nativos e não modificados diretamente no Windows e permite executar suas ferramentas Linux favoritas no topo do sistema operacional "host" do Windows.
O WSL1 adotou uma abordagem de adicionar uma camada compatível com syscall do Linux na parte superior do kernel do NT, permitindo que os binários do Linux executem no NT, compartilhando o mesmo sistema de arquivos, rede, lista de processos etc. do sistema operacional host.
O WSL2, que será lançado em breve, por outro lado, executa os binários das distros nos contêineres Linux, no topo de um kernel real do Linux, dentro de uma VM leve que aloca apenas a RAM necessária para os aplicativos executados e libera a RAM liberada de volta ao SO host. Isso fornece 100% de compatibilidade com o Linux e permite que suas ferramentas Linux funcionem com desempenho quase nativo e consome os recursos mínimos necessários do host, garantindo que sua máquina funcione de forma rápida e sem problemas.
Antes do WSL2, era possível executar o cliente Docker no WSL1, usando-o para conduzir o Docker for Windows executando no topo do Hyper-V no host local ou para gerenciar um servidor Docker remoto. Mas não se pode executar o Docker Engine no WSL1 por vários motivos técnicos.
No entanto, você pode fazer o mesmo no Docker no WSL2, mas também pode executar o próprio Docker Engine no topo do WSL, se preferir. Esse é o caminho preferido e futuro do Docker para executar o Docker na área de trabalho do Windows .
Para saber mais sobre a WSL, consulte os vídeos e documentos aqui: https://aka.ms/learnwsl
fonte
Está correto. Uma coisa que você deixa de mencionar é que a WSL atualmente é bastante lenta em io, mesmo com um rápido ssd / lotes de cpu ram / 8-core xeon. Ainda é um problema em 01/2019. Acabei de fazer um raio @ DESKTOP-O0MT13B: / mnt / c / Users / rayjh $ dd se = / dev / zero de = teste bs = contagem de 64k = 16k conv = 16k conv = fdatasync na minha estação de trabalho com um SSD samsung e só tenho 97,6 MB / s.
Rodando o bare metal ubuntu LTS esta caixa terá VÁRIAS vezes isso. Não importa os problemas intermináveis ao tentar combinar o WSL com o VSCODE.
Estou limpando o windows 10 daqui e instalando o ubuntu 18.04LTS.
fonte