Tutorial

WSL (Subsistema Windows para Linux): o que é, instalação e configuração do Linux no Windows

Atualizado: · Skillaria.Top

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âmetroWSL 1WSL 2
Kernelnão, tradução de chamadas de sistemakernel Linux real
Compatibilidade de chamadas de sistemaparcialcompleta
Docker, systemdnãosim
Velocidade nos arquivos Linux (~/)menoralta
Velocidade nos arquivos Windows (/mnt/c)altavisivelmente menor
Precisa de virtualizaçãonãosim
Redecompartilhada com o Windowsrede 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

ComandoO que faz
wslabre a distribuição padrão
wsl -d Debianabre uma distribuição específica
wsl --shutdownencerra todas as distribuições e a máquina virtual do WSL 2
wsl --terminate Ubuntuencerra uma única distribuição
wsl --updateatualiza o WSL e o kernel
wsl --statusversão padrão e estado geral
wsl --export Ubuntu ubuntu.tarcópia de segurança da distribuição em um arquivo
wsl --import Ubuntu2 D:\wsl\u2 ubuntu.tarrestaura ou clona uma distribuição
wsl --unregister Ubunturemove 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:

  1. 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».
  2. Se o componente «Plataforma de Máquina Virtual» está ativado.
  3. 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=mirrored na seção [wsl2] do arquivo .wslconfig.
  • O WSL ocupa muito espaço — o disco virtual ext4.vhdx cresce, 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 root e execute passwd 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çãoVantagensDesvantagensQuando escolher
WSL 2inicia em segundos, arquivos compartilhados, VS Code, Dockersem área de trabalho completa, particularidades de rede e discosdesenvolvimento, 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ópriamais pesada, recursos reservados antecipadamentelaboratório de servidor, testes de rede, boot e particionamento
Dualboottoda a potência do hardware, gráficos e drivers nativosreinício para trocar de sistema, risco ao particionarLinux 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.

Aprenda este tema em vídeo

Este tema é abordado em profundidade, com prática, no curso “Linux: с нуля до уверенного администрирования”.

Ir para o curso