29 de setembro de 2021 • 6 min de leitura
Ambiente de desenvolvimento no Windows 10/11 com WSL
Configure o seu ambiente para desenvolvimento de aplicações no Windows 10/11 usando o WSL - Windows Subsystem Linux.
O Windows Subsystem Linux (WSL) permite aos desenvolvedores que trabalham com Windows 10/11 executarem um ambiente GNU/Linux, incluindo ferramentas de linha de comando, utilitários e aplicativos, diretamente no Windows, sem modificações e sem a sobrecarga de uma máquina virtual tradicional ou instalação dualboot.
Neste post estarei explicando os principais passos para configuração do Windows 10/11 como ambiente para desenvolvimento de aplicações usando o WSL.
Essa solução com o WSL também facilita a instalação de dois ou mais Linux, o quanto você precisar aí na sua máquina (e a máquina suportar, lógico rs) sem precisar usar softwares para máquinas virtuais, como por exemplo o VirtualBox.
Instalação do WSL
A Microsoft disponibilizou um guia de instalação do WSL em seu site. Os comandos abaixo foram tirados desse guia, basta seguir corretamente para estar com o WSL 2 disponível para uso no seu PC.
Abrir o PowerShell como Administrador e rodar o comando:
Para abrir o PowerShell como Administrador você pode clicar com o botão direito do mouse sobre o botão Iniciar e, em seguida, clicar na opção PowerShell (Admin) ou Terminal (Administrador).
wsl --install
Esse comando habilitará os componentes opcionais necessários, baixará o kernel mais recente do Linux, definirá o WSL 2 como padrão e instalará o Linux Ubuntu como padrão.
Após executar o comando acima, reiniciar o computador.
Escolhendo uma distribuição Linux
O processo de instalação padrão instala o Ubuntu, porém se você desejar instalar uma distribuição Linux diferente, pode listar quais estão disponíveis e indicar através do nome qual deseja instalar.
Para listar as distribuições disponíveis execute no Terminal o comando wsl --list --online
ou wsl -l -o
.
Para proceder com a instalação de uma distribuição específica use o comando wsl --install -d <Distribution Name>
.
Conhecendo o comando WSL
Através do Terminal podemos executar o comando wsl.exe
, que é uma ferramenta para gerenciar nossas distribuições Linux. Vejamos alguns argumentos que podemos usar com essa ferramenta.
A sintaxe desse comando é:
wsl [Argument] [Options...] [CommandLine]
Se usarmos o comando
wsl
sem parâmetros, ele irá executar o Linux configurado como padrão.
Exibir o help para uso do comando wsl
:
wsl --help
Algumas opções interessantes:
--list, -l --all - Listar todas as distribuições. Exemplo:
wsl -l --all
-l -v - Listar todas as distribuições, incluindo a versão e o estado atual. Exemplo:
wsl -l -v
--distribution, -d
wsl -d Debian
--set-default, -s
wsl --set-default Ubuntu-20.04
--terminate, -t
wsl -t Ubuntu-20.04
--user, -u
wsl -u aluizio
--exec, -e
wsl -e cat /etc/passwd
Import e Export do WSL
As opções import
e export
do WSL permitem a realização de backup e restore de uma distribuição, podendo inclusive transferir entre PCs distintos.
Local onde normalmente ficam as distribuições do WSL:
C:\Users\Aluizio\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState
C:\Users\Aluizio\AppData\Local\Packages\TheDebianProject.DebianGNULinux_76v4gfsz19hv4\LocalState
O export
cria um arquivo tar
da distribuição. Sintaxe:
wsl --export <Distro> <FileName>
Exportando a distribuição Ubuntu-20.04 para um arquivo denominado Ubuntu-customizado.tar
:
wsl --export Ubuntu-20.04 Ubuntu-customizado.tar
Importar ou restaurar um distribuição WSL. Sintaxe:
wsl --import <novo-nome> <diretorio-destino> <arquivo-tar-de-origem>
Importar o arquivo tar
especificado como uma nova distribuição:
wsl --import Ubuntu-dev C:\Users\Aluizio\AppData\Local\Ubuntu-dev C:\Users\Aluizio\Ubuntu-customizado.tar
Otimizações nas configurações do WSL
A instalação padrão do WSL atribui acesso quase que total ao recursos do PC, o que pode se tornar um problema dependendo dos recursos de hardware disponíveis.
Podemos definir limites para WSL no uso do hardware, criando o arquivo .wslconfig
na raiz da sua pasta de usuário do Windows, conforme exemplo abaixo:
[wsl2]
memory=4GB
processors=4
swap=2GB
Para concluir essa configuração reinicie a distribuição Linux através do comando wsl --shutdown
no PowerShell.
Primeiros passos com o Ubuntu
Depois de instalar o WSL, você precisará criar uma conta de usuário e uma senha para a distribuição do Linux recém instalada.
A conta recém criada será o usuário padrão para a distribuição e será conectada automaticamente ao iniciar. Essa conta será considerada o administrador do Linux, com a capacidade de executar comandos administrativos sudo
.
Cada distribuição do Linux em execução no WSL tem suas próprias contas de usuário e senhas do Linux.
Atualização do Sistema
É fundamental que você execute os comandos para atualizações e upgrades de pacotes do Ubuntu, inclusive procedendo com essas tarefas de forma regular.
sudo apt update && sudo apt upgrade
Na sequencia indico a instalação de alguns recursos adicionais que podem ajudar no dia a dia como desenvolvedor de aplicativos.
Instalar o editor de textos vim
:
sudo apt install vim
Instalar o git
:
sudo apt install git
Instalar o Node.js
através do gerenciador de pacotes apt
:
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt install -y nodejs
Instalar o Yarn
:
Acesse a página de download da documentação oficial do Yarn.
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt update
sudo apt install yarn
Recursos e facilidades para acesso ao WSL
Acessando o WSL pelo Windows Explorer
Você pode digitar na barra de endereços do Windows Explorer o seguinte caminho:
\\wsl$
Acessando o Drive C: pelo WSL
Para acessar todo o conteúdo do drive C: do Windows de dentro do WSL2, basta acessar o diretório /mnt/c/
.
cd /mnt/c/
ls -la
Também é possível rodar programas Windows a partir do shell do WSL, como mostrado no exemplo abaixo:
explorer.exe .
notepad.exe .
code .
Configurações adicionais no WSL
Quando abrimos o Linux, por padrão ele entra na pasta do Windows montada no Linux /mnt/c/...
. Para alterar a pasta padrão, definindo a home do sistema Linux, vamos seguir alguns passos:
No Linux, verifique qual o nome da pasta home, através do comando echo $HOME
.
Abra as configurações do Windows Terminal e selecione a distribuição Linux na seção Profiles na lateral esquerda. No campo Starting Directory, informe:
\\wsl.localhost\Ubuntu\home\aluizio
Substitua
Ubuntu
pelo nome da sua distribuição Linux ealuizio
pelo nome do seu usuário, no comando acima.
Outra configuração que podemos fazer é definir o Ubuntu como shell padrão do Windows Terminal. Para isso, abra as configurações do Windows Terminal, clique na opção Startup no menu lateral esquerdo e, na lista Default profile
, selecione a sua distribuição Linux.
Agora podemos salvar as alterações e sair.
É recomendável que os arquivos de projetos de desenvolvimento de apps fiquem no sistema de arquivos do subsistema Linux. Evite usar a pasta
/mnt/c/
para esse fim, pois o desempenho com certeza será comprometido.O WSL não é indicado para hospedar aplicações em produção.