Windows Subsystem for Linux
O Windows Subsystem for Linux (WSL) é uma ferramenta de código aberto apoiada pela Microsoft que permite a emulação de um sistema operacional Linux dentro do Windows. A atual versão na data de escrita deste livro é a WSL 2, que traz grandes melhorias em relação à versão anterior.
O WSL permite instalar diversas distribuições Linux, até mesmo concomitantemente. Este guia oficial da Microsoft mostra algumas opções. Para este guia, vamos instalar a distribuição Fedora 42.
Pré-requisitos
Seção intitulada “Pré-requisitos”Se você estiver usando o Windows 11, ou o Windows 10 versão 2004 (Build 19041) ou superior, o WSL 2 já estará habilitado, e você pode pular para a próxima seção.
Para verificar a versão do seu Windows, pressione winver
.
Então, pressione

O sistema exibirá uma janela similar a essa.

Eu tenho instalado o Windows 11, que já tem o WSL habilitado por padrão. Se também for o seu caso, clique no botão abaixo.
Caso utilize uma versão mais antiga, seguiremos os passos recomendados pelo guia oficial da Microsoft.
Ainda assim, para sistemas com arquitetura x64, é necessário ter instalada a versão 1903 do Windows 10 ou posterior, com a Build 18362.1049 ou posterior. Versões mais antigas do Windows 10 não possuem suporte para o WSL 2.
Habilitando o WSL
Seção intitulada “Habilitando o WSL”Para habilitar o WSL no sistema, abra o PowerShell como administrador e execute o comando abaixo.
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
Habilitando a Virtualização
Seção intitulada “Habilitando a Virtualização”Para habilitar a virtualização no sistema, execute o comando abaixo no PowerShell como administrador.
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
Atualizando para o WSL 2
Seção intitulada “Atualizando para o WSL 2”Baixe o pacote de atualização do WSL 2 pelo repositório da Microsoft. Você pode verificar a origem do link pelo guia oficial da Microsoft.
Após o download, execute o instalador e siga as instruções.
Definindo o WSL 2 como padrão
Seção intitulada “Definindo o WSL 2 como padrão”Por fim, defina a versão 2 do WSL como padrão com o comando abaixo, ainda no PowerShell como administrador.
wsl --set-default-version 2
Então, reinicie o computador para aplicar as mudanças.
Instalando o WSL
Seção intitulada “Instalando o WSL”Primeiramente, devemos instalar o WSL propriamente dito. Para isso, abra o PowerShell e execute o comando abaixo.
wsl.exe --install --no-distribution

Então, reinicie o computador para aplicar as mudanças.
Instalando o Fedora
Seção intitulada “Instalando o Fedora”Agora que o WSL está habilitado, podemos instalar a distribuição Fedora, segundo seu manual oficial.
Para fazer isso, abra o PowerShell e execute o comando abaixo.
wsl --install FedoraLinux-42
Então, defina-o como a distribuição padrão com o seguinte comando.
wsl -d FedoraLinux-42
Após aguardar alguns segundos, o sistema pedirá para criar um usuário. Eu recomendo usar o mesmo nome de usuário que você utiliza no Windows.

Agora, feche essa janela do Powershell.
Após instalar o WSL, você poderá abri-lo diretamente pela entrada criada no menu Iniciar do Windows, chamada WSL
.
Abra-o, e digite o comando abaixo para definir uma senha.
sudo passwd $USER
Outro detalhe é que, nos sistemas Linux, a senha não aparece enquanto você digita, fica apenas o espaço em branco mesmo.
Não se preocupe, digite-a até o final e pressione
O sistema fará as últimas configurações e criara um usuário de administrador para você dentro do Fedora.

Lembre-se da sua senha, pois ela será solicitada sempre que você precisar de permissões de administrador.
Esqueci a senha do meu usuário no WSL
Seção intitulada “Esqueci a senha do meu usuário no WSL”Em caso de esquecê-la, você pode entrar no wsl como um usuário root. Para isso, execute o seguinte comando no PowerShell.
wsl --user root
Então, execute o comando de redefinição de senha, mas digitando seu usuário em vez de [YOUR_USERNAME]
, sem os colchetes.
sudo passwd [YOUR_USERNAME]
Atualizando os pacotes
Seção intitulada “Atualizando os pacotes”A maioria das ferramentas que você instalará no Fedora será por meio do gerenciador de pacotes dnf
.
Para atualizar os pacotes, execute o comando abaixo.
sudo dnf upgrade
A palavra sudo
é usada para executar um comando com permissões de administrador.
Ela provavelmente solicitará a senha do usuário que você criou anteriormente.
Quando perguntado se deseja continuar, pressione




Estrutura de diretórios
Seção intitulada “Estrutura de diretórios”Aqui vale um pequeno apanhado de como funciona a estrutura de diretórios no Linux. Ela varia um pouco a depender da distribuição, mas a estrutura básica é a mesma.
- O sistema todo é organizado dentro de uma pasta, a qual chamamos de
ROOT
ou/
.- Ela não tem realmente um nome, por isso a referenciamos apenas com uma barra.
- Dentro dela, temos diversas pastas, que são responsáveis por organizar, por exemplo:
bin
: programas executáveis instalados a nível de sistema (pelo apt ou dnf)opt
: programas instalados manualmente a nível de sistema.usr
: programas instalados pelos usuários.etc
: arquivos de configuração do sistema.lib
: bibliotecas compartilhadas por programas.home
: pastas dos usuários.mnt
: referências a dispositivos de armazenamento montados no computador, como pendrives e HDs.
Há outras pastas (chamadas comumente de diretórios) importantes, mas com o tempo você pega o jeito.

A que nos interessa no momento é a pasta home
.
Dentro dela, o sistema cria uma pasta para cada usuário, nomeada com o nome do usuário.
Por exemplo, o meu usuário é gabriel-dev
, então a pasta do meu usuário é /home/gabriel-dev
.
Essa pasta é tão importante que ela tem uma variável de ambiente que a referencia, chamada de HOME
.
Digite no terminal o comando echo $HOME
e veja o que aparece.
Depois, digite echo $HOME
no PowerShell e veja o que aparece.
Tanto o Windows quanto o Linux possuem essa variável de ambiente, mas perceba que o caminho é diferente!


De fato, eu uso o mesmo nome de usuário no Fedora e no Windows, mas o caminho da pasta do usuário é diferente porque se tratam de duas pastas completamente distintas.
O WSL cria todo um novo ambiente de emulação dentro do Windows, com suas próprias pastas e configurações. Mas como acessar esse ambiente?
Se tudo tiver sido instalado corretamente, você verá uma nova entrada no Explorador de Arquivos chamada Linux
.
Dentro dela, haverá uma pasta chamada FedoraLinux-42
(ou na versão mais atual).
Essa é justamente a pasta /
(raiz) do Fedora, a qual mencionamos anteriormente.

Acesse pelo Explorador de Arquivos a pasta home
.
Ela contém todos os diretórios de usuários registrados no Fedora.
No momento, existe apenas o usuário que criamos.
No meu caso, é o gabriel-dev
.
Clique com o botão direito nela, e selecione Fixar no Acesso rápido.
Abra a pasta do seu usuário. Garanta que os arquivos ocultos estejam sendo exibidos. Você pode fazer isso clicando em: Visualizar > Mostrar > Itens ocultos.

Vemos que há alguns arquivos dentro do diretório do usuário.
O arquivo .bashrc
é o arquivo de configuração do Bash, o shell padrão do Fedora.
Link simbólico
Seção intitulada “Link simbólico”O ideal quando se usa o WSL é deixar todos os seus arquivos e projetos dentro do diretório do usuário do Linux. Assim, tem-se uma performance melhor e evita-se problemas de compatibilidade.
Entretanto, pode ser chato ter que navegar até o diretório do usuário toda vez que você quiser acessar um arquivo. Para facilitar, você pode criar um link simbólico no Windows que aponta para alguma pasta dentro do Fedora.
Eu gosto de organizar meus projetos numa pasta chamada dev
na raiz do diretório do usuário.
Para criar uma pasta com esse nome, abra o WSL e execute o comando abaixo.
mkdir ~/dev
Vamos criar um arquivo de texto dentro dessa pasta para testar o link simbólico.
echo "Hello, World!" > ~/dev/hello.txt`

Então, abra no terminal um perfil do PowerShell como administrador e execute o comando abaixo para criar um link simbólico, substituindo a versão do Fedora, se você utilizar uma mais recente que a 42.
New-Item -ItemType SymbolicLink -Path "C:\Users\$env:USERNAME\dev" -Target "\\wsl$\FedoraLinux-42\home\$env:USERNAME\dev"
O resultado será como o seguinte.
Diretório: C:\Users\gabriel-dev
Mode LastWriteTime Length Name---- ------------- ------ ----d----l 23/04/2025 12:03 dev
Então, você poderá acessar a pasta dev
diretamente pelo Explorador de Arquivos.
Abra o Executar com %USERPROFILE%
para acessar seu diretório de usuário no Windows.
Você verá verá que a pasta dev
está lá, e que apresenta um ícone de atalho.

Clique com o botão direito na pasta dev
e selecione Fixar no Acesso rápido para tê-la sempre à mão.
Ao acessar a pasta, você verá o arquivo hello.txt
que criamos anteriormente no Fedora.
