WSL (Subsistema Windows para Linux): o que é, instalação e configuração do Linux no Windows
O WSL (Windows Subsystem for Linux, Subsistema Windows para Linux) é um recurso integrado ao Windows 10 e 11 que executa uma distribuição Linux real sem máquina virtual separada e sem dualboot. É instalado com um único comando, wsl --install, no PowerShell como administrador; por padrão é instalado o WSL 2 com o Ubuntu, onde roda um kernel Linux real dentro de uma máquina virtual leve.
O Windows Subsystem for Linux (WSL, Subsistema Windows para Linux) é um recurso do Windows 10 e 11 que permite executar uma distribuição Linux dentro do próprio Windows: o terminal bash, apt, ssh, grep, Docker e qualquer utilitário de linha de comando. Não é preciso instalar o VirtualBox nem dividir o disco para ter um segundo sistema: o Ubuntu abre como uma janela de terminal comum em poucos segundos. A seguir, veja a diferença entre WSL 1 e WSL 2, como instalar o subsistema, como trabalhar com arquivos, VS Code e aplicativos gráficos, e o que fazer com os erros mais comuns.
O que é WSL no Linux e no Windows
Resumindo, o WSL é uma forma de ter um ambiente Linux completo para desenvolver e estudar sem sair do Windows. Você instala uma distribuição (Ubuntu, Debian, openSUSE, Kali, AlmaLinux e outras) pela linha de comando ou pela Microsoft Store e depois trabalha nela como em um servidor: usuários, permissões, pacotes e serviços.
É importante entender o que o WSL não é. Não é um emulador de comandos como o Cygwin, nem um conjunto de utilitários portados: no WSL 2 roda um kernel Linux real, compilado pela Microsoft. Por isso, os binários Linux executam sem recompilação, e o que você aprende no WSL se transfere diretamente para um servidor de verdade.
Tarefas típicas para o subsistema:
- estudar Linux e a linha de comando sem ter outro computador;
- desenvolvimento web quando a produção roda em Linux (Python, Node.js, PHP, Go);
- Docker Desktop, que usa o WSL 2 como mecanismo;
- conexão com servidores via SSH, scripts bash e trabalho com git em um ambiente familiar.
WSL 1 e WSL 2: qual a diferença
Existem duas arquiteturas do subsistema. O WSL 1 traduz as chamadas de sistema do Linux em chamadas ao kernel do Windows: não há um kernel Linux propriamente dito. O WSL 2 executa um kernel Linux real dentro de uma máquina virtual leve baseada no Hyper-V, que inicia em segundos e gerencia a própria memória.
| Parâmetro | WSL 1 | WSL 2 |
|---|---|---|
| Kernel | não, tradução de chamadas de sistema | kernel Linux real |
| Compatibilidade de chamadas de sistema | parcial | completa |
| Docker, systemd | não | sim |
Velocidade nos arquivos Linux (~/) | menor | alta |
Velocidade nos arquivos Windows (/mnt/c) | alta | visivelmente menor |
| Precisa de virtualização | não | sim |
| Rede | compartilhada com o Windows | rede virtual própria (NAT por padrão) |
Para quase todos os casos, escolha o WSL 2, que já é o padrão. O WSL 1 faz sentido se a virtualização não puder ser ativada (por exemplo, quando o Windows já roda dentro de uma máquina virtual sem virtualização aninhada) ou se o projeto precisa ficar no disco do Windows e ser usado intensamente a partir dele.
Como instalar o WSL no Windows 10 e 11
No Windows 11 e no Windows 10 versão 2004 ou posterior (build 19041+), a instalação resume-se a um comando. Abra o PowerShell ou o Terminal como administrador e execute:
wsl --install
O comando ativa os componentes necessários do Windows, baixa o kernel do WSL 2 e instala o Ubuntu. Depois de reiniciar, abre-se a janela da distribuição: crie um nome de usuário e uma senha Linux. Eles não estão ligados à conta do Windows; essa senha será pedida pelo sudo.
Enter new UNIX username: alex
New password:
Retype new password:
passwd: password updated successfully
Installation successful!
Atualize os pacotes logo de início, como em qualquer servidor novo:
sudo apt update && sudo apt upgrade -y
Como escolher a distribuição
O Ubuntu é instalado por padrão, mas você pode escolher outra distribuição. Para listar as disponíveis:
wsl --list --online
Para instalar uma distribuição específica pelo nome da lista:
wsl --install -d Debian
Se o WSL já estiver instalado, o comando apenas adiciona a nova distribuição. Você pode manter vários sistemas ao mesmo tempo, por exemplo o Ubuntu para trabalho e o Kali para experimentos.
Verificar a versão: wsl -l -v
Para ver as distribuições instaladas, o estado delas e a versão do WSL:
wsl -l -v
NAME STATE VERSION
* Ubuntu Running 2
Debian Stopped 2
O asterisco marca a distribuição padrão, que é aberta pelo comando wsl sem parâmetros. Para trocá-la: wsl --set-default Debian.
Como passar do WSL 1 para o WSL 2
A versão usada em novas instalações é definida com:
wsl --set-default-version 2
Uma distribuição já instalada é convertida separadamente (os dados são preservados, mas o processo pode levar alguns minutos):
wsl --set-version Ubuntu 2
A conversão inversa é wsl --set-version Ubuntu 1.
Comandos úteis para gerenciar o WSL
| Comando | O que faz |
|---|---|
wsl | abre a distribuição padrão |
wsl -d Debian | abre uma distribuição específica |
wsl --shutdown | encerra todas as distribuições e a máquina virtual do WSL 2 |
wsl --terminate Ubuntu | encerra uma única distribuição |
wsl --update | atualiza o WSL e o kernel |
wsl --status | versão padrão e estado geral |
wsl --export Ubuntu ubuntu.tar | cópia de segurança da distribuição em um arquivo |
wsl --import Ubuntu2 D:\wsl\u2 ubuntu.tar | restaura ou clona uma distribuição |
wsl --unregister Ubuntu | remove a distribuição junto com todos os dados |
Cuidado com o --unregister: os arquivos dentro da distribuição são apagados sem passar pela lixeira. Antes disso, faça um --export.
Arquivos do Windows no Linux e vice-versa
Os discos do Windows são montados automaticamente dentro do WSL no diretório /mnt: o disco C: é /mnt/c, o D: é /mnt/d.
cd /mnt/c/Users/alex/Downloads
ls -l
cp report.csv ~/projects/
No sentido contrário, os arquivos Linux aparecem no Explorador de Arquivos pelo caminho de rede \\wsl$\Ubuntu (no Windows 11, também \\wsl.localhost\Ubuntu) e na seção «Linux» da barra lateral. Para abrir rapidamente o diretório atual do Linux no Explorador:
explorer.exe .
Do WSL é possível executar programas do Windows (notepad.exe, code), e no PowerShell, comandos Linux com o prefixo wsl: wsl ls -la. Para converter caminhos entre os dois sistemas existe o utilitário wslpath:
wslpath 'C:\Users\alex'
/mnt/c/Users/alex
A regra principal de desempenho do WSL 2: mantenha os projetos no sistema de arquivos Linux (~/projects), não em /mnt/c. O acesso aos discos do Windows passa por um protocolo de rede, e operações como git status ou npm install em um projeto grande ficam várias vezes mais lentas.
VS Code e WSL
O Visual Studio Code consegue trabalhar com o WSL como se fosse uma máquina remota: a interface permanece no Windows, enquanto o terminal, as extensões, os interpretadores e o depurador rodam dentro do Linux. Para isso é necessária a extensão WSL (da Microsoft). Depois, no terminal da distribuição, vá até o diretório do projeto e execute:
cd ~/projects/site
code .
Na primeira execução, o VS Code instala no Linux a parte servidora. No canto inferior esquerdo aparece o indicador «WSL: Ubuntu», o que significa que tudo o que você executar pelo terminal integrado roda no Linux. Extensões como Python ou ESLint devem ser instaladas «no WSL»: o VS Code oferece isso com um botão.
Aplicativos gráficos no WSL (WSLg)
No Windows 11 e nas versões atuais do WSL no Windows 10 existe o WSLg, que oferece suporte a aplicativos gráficos Linux sem configurar um servidor X. Instale o programa normalmente, e a janela dele aparece ao lado das janelas do Windows, com um atalho no menu Iniciar.
sudo apt install gedit -y
gedit ~/.bashrc &
O WSLg suporta X11 e Wayland, além de som e área de transferência. Ainda assim, para o uso diário com uma área de trabalho Linux completa, não é um substituto: o WSL foi pensado para aplicativos isolados, não para rodar GNOME ou KDE inteiros.
systemd e recursos do WSL 2
As versões atuais do WSL 2 suportam systemd: em instalações novas do Ubuntu ele já vem ativado. Se não estiver, adicione ao arquivo /etc/wsl.conf, dentro da distribuição:
[boot]
systemd=true
e reinicie o subsistema pelo PowerShell com wsl --shutdown. Depois disso, funcionam o systemctl e serviços como nginx ou PostgreSQL.
Você pode limitar a memória e os processadores da máquina virtual do WSL 2 no arquivo %UserProfile%\.wslconfig, do lado do Windows:
[wsl2]
memory=4GB
processors=2
As configurações são aplicadas após wsl --shutdown.
Erros comuns na instalação do WSL
Erro 0x80370102
Mensagem completa: «Não foi possível iniciar a máquina virtual porque um componente necessário não está instalado» (WslRegisterDistribution failed with error: 0x80370102). A causa quase sempre é uma só: o WSL 2 não consegue iniciar a máquina virtual. Verifique nesta ordem:
- Se a virtualização por hardware está ativada na BIOS/UEFI: Intel VT-x (Intel Virtualization Technology) ou AMD-V (modo SVM). O estado aparece no Gerenciador de Tarefas → «Desempenho» → CPU → «Virtualização: Habilitado».
- Se o componente «Plataforma de Máquina Virtual» está ativado.
- Se o hypervisor não está desativado no carregador de inicialização.
Os componentes são ativados pelo PowerShell como administrador:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
bcdedit /set hypervisorlaunchtype auto
Depois, reinicie o computador. Se você trabalha dentro de uma máquina virtual, é preciso permitir a virtualização aninhada no host; caso contrário, use o WSL 1.
Outros problemas frequentes
- 0x800701bc — o kernel do WSL 2 não está atualizado. Execute
wsl --update. - O comando wsl --install mostra apenas a ajuda — o WSL já está instalado; adicione a distribuição com
wsl --install -d Ubuntu. - Sem internet dentro do WSL com VPN — o cliente VPN intercepta as rotas da rede virtual. No Windows 11 ajuda o modo
networkingMode=mirroredna seção[wsl2]do arquivo.wslconfig. - O WSL ocupa muito espaço — o disco virtual
ext4.vhdxcresce, mas não diminui sozinho após apagar arquivos. Pode ser reduzido manualmente ou a distribuição pode ser transferida com--export/--import. - Esqueceu a senha Linux — entre como root pelo PowerShell com
wsl -u roote executepasswd alex.
WSL, máquina virtual ou dualboot
O WSL não é a única forma de ter Linux em um computador com Windows. A escolha depende da tarefa.
| Opção | Vantagens | Desvantagens | Quando escolher |
|---|---|---|---|
| WSL 2 | inicia em segundos, arquivos compartilhados, VS Code, Docker | sem área de trabalho completa, particularidades de rede e discos | desenvolvimento, estudo da linha de comando, scripts |
| Máquina virtual (VirtualBox, Hyper-V, VMware) | isolamento total, snapshots, qualquer distribuição e área de trabalho, placa de rede própria | mais pesada, recursos reservados antecipadamente | laboratório de servidor, testes de rede, boot e particionamento |
| Dualboot | toda a potência do hardware, gráficos e drivers nativos | reinício para trocar de sistema, risco ao particionar | Linux como sistema principal, jogos e tarefas com GPU no Linux |
Para aprender Linux do zero, o WSL geralmente basta: arquivos, permissões, processos, pacotes, scripts bash e SSH funcionam como em um servidor. A máquina virtual passa a ser necessária quando entram coisas que o WSL faz de outra maneira: o carregador de inicialização, o particionamento de discos físicos, as interfaces de rede e o firewall no nível do host.
Conclusão
O Subsistema Windows para Linux entrega um Linux de verdade dentro do Windows com um único comando, wsl --install. Escolha o WSL 2, confira as versões com wsl -l -v, mantenha os projetos em ~/ e não em /mnt/c, e conecte o VS Code pela extensão WSL. Se a instalação falhar com 0x80370102, ative a virtualização na BIOS e o componente «Plataforma de Máquina Virtual». Montar esse ambiente é o primeiro passo da prática no curso de Linux.
Perguntas frequentes
O WSL é gratuito?
Sim. O WSL vem incluído no Windows 10 e 11 em todas as edições, inclusive a Home, e as distribuições Linux também são gratuitas.
É possível rodar Docker no WSL?
Sim, mas somente no WSL 2. Você pode instalar o Docker Desktop com o mecanismo WSL 2 ou instalar o Docker Engine diretamente na distribuição, como em um servidor Ubuntu comum.
Onde ficam fisicamente os arquivos de uma distribuição WSL?
No WSL 2, em um disco virtual ext4.vhdx dentro do perfil de usuário do Windows. Não é preciso abri-lo diretamente: use o caminho \\wsl$\ no Explorador de Arquivos.
Como remover o WSL por completo?
Remova as distribuições com wsl --unregister <nome>, depois desinstale o aplicativo «Subsistema Windows para Linux» em «Aplicativos instalados» e, se quiser, desative os componentes do Windows.
É possível mover o WSL para outro disco?
Sim: wsl --export Ubuntu ubuntu.tar, depois wsl --unregister Ubuntu e wsl --import Ubuntu D:\wsl\ubuntu ubuntu.tar. Nas versões recentes também existe o comando wsl --manage Ubuntu --move.
Este tema é abordado em profundidade, com prática, no curso “Linux: с нуля до уверенного администрирования”.
Ir para o curso