Windows 10

WSL

Posted by     "rbits" on Tuesday, September 22, 2020

TOC

Histórico

Finalmente a versão de Maio 2019 do Windows 10 oferece uma forma fácil, segura e oficialmente suportada para trabalhar com arquivos Linux fazendo uso do WIndows Explorer e outras aplicações.

WSL é a sigla de Windows Subsistema Linux que oferece uma infraestrutura para poder executar aplicação Linux dentro do Windows, sem a necessidade de criar e gerenciar uma maquina virtual (VM) especifica para uso do Linux. Com WSL os usuarios e desenvolvedores tem uma opção mais amigavel e mais simples para executar aplicações Windows e Linux. A versão WSL anterior, não permite o acesso do Windows Explorer nos arquivos Linux, mas a versão WSL 2 adicionou mais essa funcionalidade e outras não existentes na versão inicial.

A versão WSL 1 o espaço do usuário estava limitada a emulação do Kernel do Linux ao contrario da versão WSL 2 que faz uso de uma VM de forma transparente para o usuário mas com a mesma experiencia de integração e melhor compatibilidade, sem emulação do Kernel.

A versão WSL 2 está disponivel a partir do build 1903 a 1909. Exige a instalação do recurso de virtualização (virtualization feature). Essa versão é 5 vezes mais rápida que a versão WSL1. 100% compativel com as chamadas de sistema (system call compatibility) e ainda permite usar o Docker Desktop para fazer a gestão do seu container.

O primeiro passo para atualizar para versão 2 é saber qual a versão do Windows mas precisamente seu build que é o numero relacionado a atualização do seu Windows 10. A forma mais simples é executar o comando winver.exe. Para instalar o recurso virtualization feature, inicie o prompt do Powershell como administrador e digite: Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform

No final é necessário reiniciar o computador para o recurso ser carregado pelo Windows.

A versão WSL 2, permite que o Windows Explorer veja a estrutura de diretórios da distribuição Linux instalada previamente a partir da Windows Store. Na linha do Comando de Prompt, no diretório raiz, digite: explorer.exe . (não esqueça do .ponto ou dot em ingles). Pronto, voce terá acesso aos arquivos Linux a partir do Windows Explorer.

Outro recurso disponivel na versão WSL 2 é definir a versão do WSL para sua distribuição. Exemplo, para configurar o Ubutu previamente instalado para WSL 2: wsl –set-version Ubuntu 2

Ou para definir como padrão, a versão WSL 2: wsl –set-default-version 2

Outro recurso é acessar os arquivos Linux pelo caminho UNC, \wsl$, exemplo: dir \wsl$\Ubuntu\var\www\html

Para executar aplicações Linux é necessário executar um servidor XWindows por meio do aplicativo Xming.

Como executar aplicações Linux dentro do Windows 10 são necessários os seguintes passos: a) Baixar e Instalar Ubuntu da Microsoft Store no Windows 10. b) Inicie a app Ubuntu e defina usuario e senha. c) Purge e Install o openssl-server no Ubuntu. Tem que usar o purge para remover, senão o sshd não inicia. d) Instale a aplicação xeyes por meio do pacote apt-get install X11-apps no Ubuntu. e) Instale a aplicação Windows Xming Server no Windows 10. f) No prompt do Ubuntu, execute: sudo export DISPLAY=127.0.0.1:0.0

Pronto, executar o icon do Ubuntu e no prompt de comando do Linux executar sua aplicação grafica como o xeyes instalado previamente.

Atalhos importantes

New Terminal (Ctrl+`) modo terminal WSL VS Code (Ctrl+Shift+X) for acessar arquivos linux

Documentos

https://docs.microsoft.com/en-us/windows/wsl/about

https://devblogs.microsoft.com/commandline/author/crloewenmicrosoft-/

Craig Loewen Program Manager, Windows Developer Platform https://twitter.com/craigaloewen

WSL2 will soon be officially available as part of Windows 10, version 2004! https://devblogs.microsoft.com/commandline/wsl2-will-be-generally-available-in-windows-10-version-2004/

WSL 2 is now available in Windows Insiders https://devblogs.microsoft.com/commandline/wsl-2-is-now-available-in-windows-insiders/?WT.mc_id=thomasmaurer-blog-thmaure

Tips and Tricks for Linux development with WSL and Visual Studio Code https://devblogs.microsoft.com/commandline/tips-and-tricks-for-linux-development-with-wsl-and-visual-studio-code/