Guia Completo do WSL 2 no Windows para Desenvolvedores
Aprenda a configurar e dominar o WSL 2 no Windows 11. Do básico ao avançado: integração com VS Code, Docker, CUDA e muito mais.

O que é WSL 2 e por que você deveria usar?
O Windows Subsystem for Linux 2 (WSL 2) é uma camada de compatibilidade oficial da Microsoft que permite executar um ambiente Linux completo diretamente no Windows — sem máquina virtual separada, sem dual-boot, sem dor de cabeça.
Diferente da primeira versão, o WSL 2 utiliza um kernel Linux real compilado pela Microsoft, oferecendo compatibilidade de sistema de arquivos e desempenho muito superiores. Para desenvolvedores que precisam do Windows (por trabalho, jogos ou preferência) mas querem as ferramentas Unix, o WSL 2 é a solução definitiva.
Instalação
A instalação nunca foi tão simples. Abra o PowerShell como Administrador e execute:
wsl --install
Esse único comando instala o WSL 2, o Ubuntu como distribuição padrão e habilita todos os recursos necessários. Após a instalação, reinicie o computador e configure seu usuário e senha no Ubuntu.
Instalando uma distribuição específica
Se preferir outra distro:
wsl --list --online
wsl --install -d Fedora
Verificando a instalação
uname -r
cat /etc/os-release
Configurações essenciais
Arquivo .wslconfig
Crie o arquivo %USERPROFILE%\.wslconfig para configurar o comportamento global do WSL:
[wsl2]
memory=8GB
processors=4
swap=2GB
localhostForwarding=true
Performance do sistema de arquivos
O WSL 2 tem uma diferença crucial de performance entre acessar arquivos dentro do sistema de arquivos Linux (/home/) versus arquivos no sistema de arquivos Windows (/mnt/c/). Sempre trabalhe dentro do diretório home do WSL para melhor performance:
cd ~/projetos/meu-app
npm install
cd /mnt/c/Users/voce/projetos/meu-app
npm install
A diferença pode ser de 5x a 20x em operações com muitos arquivos pequenos (como node_modules).
Integração com VS Code
A integração entre VS Code e WSL 2 é uma das melhores experiências de desenvolvimento disponíveis. O VS Code roda na interface do Windows, mas o servidor de linguagem, terminal e extensões executam dentro do WSL, oferecendo performance nativa de Linux.
Configuração
- Instale a extensão "WSL" no VS Code
- No terminal WSL, navegue até seu projeto e execute:
code .
O VS Code abrirá com a integração WSL ativa automaticamente. Você pode verificar no canto inferior esquerdo: deve aparecer "WSL: Ubuntu" (ou sua distribuição).
Extensões no WSL
As extensões são instaladas separadamente para o WSL. Quando uma extensão precisa de acesso ao filesystem Linux (como ESLint, Prettier, Python, C++), instale-a na seção "WSL: Ubuntu" da aba de extensões.
Docker no WSL 2
A melhor experiência Docker no Windows é executar o Docker Engine diretamente dentro do WSL, sem necessidade do Docker Desktop:
sudo apt update
sudo apt install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
| sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \
https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo $VERSION_CODENAME) stable" \
| sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
sudo usermod -aG docker $USER
sudo service docker start
docker run hello-world
Para que o Docker inicie automaticamente, adicione ao seu ~/.bashrc ou ~/.zshrc:
sudo service docker start 2>/dev/null
CUDA e desenvolvimento GPU
O WSL 2 suporta CUDA nativamente, permitindo treinamento de modelos de machine learning e computação GPU sem dual-boot:
nvidia-smi
pip install torch torchvision torchaudio --index-url \
https://download.pytorch.org/whl/cu121
A GPU é compartilhada diretamente com o WSL 2, sem a sobrecarga de virtualização tradicional.
Rede e portas
O WSL 2 possui seu próprio endereço IP, mas o localhost forwarding (habilitado por padrão) redireciona automaticamente portas do WSL para o Windows. Ou seja, se você rodar um servidor na porta 3000 dentro do WSL, ele estará acessível em http://localhost:3000 no navegador do Windows.
Acessar serviços WSL da rede local
Para expor um serviço WSL para outros dispositivos na rede:
netsh interface portproxy add v4tov4 listenport=3000 listenaddress=0.0.0.0 connectport=3000 connectaddress=$(wsl hostname -I)
Dicas avançadas
Atualizar o kernel WSL
wsl --update --pre-release
Gerenciar múltiplas distribuições
wsl --list --verbose
wsl --set-default Ubuntu
wsl --shutdown
Backup e exportação
wsl --export Ubuntu backup-ubuntu.tar
wsl --import Ubuntu D:\wsl\Ubuntu backup-ubuntu.tar
Conclusão
O WSL 2 preencheu a lacuna entre o Windows e o Linux de forma elegante. Para desenvolvedores que precisam das duas plataformas, ele oferece o melhor dos dois mundos: a compatibilidade de software e gaming do Windows, com o poder das ferramentas Unix e do ecossistema Linux. Se você ainda não configurou seu WSL, reserve 15 minutos e faça isso hoje — sua produtividade vai agradecer.
Newsletter TechMate
Receba tutoriais exclusivos, dicas de Linux e novidades de dev diretamente no seu e-mail. Sem spam, apenas conteúdo técnico de verdade.
JOIN 2,400+ READERS · OPT-OUT ANYTIME
Curtiu?
Compartilhe este artigo com outros devs ou explore mais sobre Windows.
Comentários
Comentários via GitHub Discussions — ver todas as discussões

