CodeGym /Cursos /Docker SELF /Trabalhando com Linux no Windows: WSL

Trabalhando com Linux no Windows: WSL

Docker SELF
Nível 1 , Lição 2
Disponível

1. O que é WSL?

Agora vamos abordar um tópico interessante: como trabalhar com Linux se você usa Windows como seu sistema operacional principal? Bem-vindo ao mundo do WSL!

WSL (Windows Subsystem for Linux) é uma tecnologia da Microsoft que permite rodar distribuições Linux diretamente no Windows. Existem duas versões:

  • WSL1: funciona como uma camada de compatibilidade no nível de chamadas de sistema entre Windows e Linux. Ele emula o comportamento do Linux através do kernel do Windows.
  • WSL2: usa um kernel Linux completo através de uma máquina virtual leve oculta. Isso torna o WSL2 mais rápido e mais compatível com o Linux real.

O WSL é como um compromisso entre dois mundos: você obtém as ferramentas do Linux enquanto permanece no ecossistema do Windows. Para desenvolvedores, isso é uma grande vantagem: é possível programar, testar e configurar servidores usando seus comandos favoritos do Linux.


2. Por que o WSL é tão valioso?

  1. Desenvolvimento e testes: O WSL permite que os desenvolvedores trabalhem em um ambiente Linux sem precisar reiniciar o computador ou usar máquinas virtuais.
  2. Docker e containerização: O WSL2 suporta Docker, o que é especialmente útil para trabalhar com containers.
  3. Integração de sistemas de arquivos: Você pode facilmente compartilhar arquivos entre Windows e Linux, usando um único sistema de arquivos.
  4. Facilidade de configuração: Instalar o WSL leva literalmente alguns minutos.

Como o WSL é diferente de uma máquina virtual?

  • Não precisa de virtualização. Você não precisa instalar VirtualBox, VMware ou Hyper-V. O WSL funciona no nível do sistema.
  • Menos recursos. O WSL usa menos memória RAM e CPU comparado a uma máquina virtual tradicional.
  • Integração com o Windows. Você pode compartilhar arquivos facilmente entre Windows e Linux, executar comandos Linux e Windows juntos (!), além de usar as mesmas interfaces de rede.

3. Instalando o WSL

1. Verificando os requisitos do sistema

Antes de começar, certifique-se de que o seu sistema atende aos requisitos mínimos:

  • Windows 10 (versão 2004 ou superior) ou Windows 11.
  • Virtualização ativada no BIOS/UEFI.

Para verificar a versão do Windows, abra o PowerShell e execute:

winver

Deve aparecer uma janela mais ou menos assim:

Se você não sabe como abrir o PowerShell no Windows, pressione Win+S e digite powershell.

2. Ativando o WSL

Abra o PowerShell como administrador e execute o seguinte comando:

wsl --install

Este comando irá instalar automaticamente o WSL, baixar o kernel do Linux e configurar o WSL2 como a versão padrão.

Se, por algum motivo, o comando não funcionar, você pode ativar manualmente o WSL pelos recursos adicionais do Windows:

  1. Abra "Painel de Controle" → "Programas e Recursos" → "Ativar ou desativar recursos do Windows".
  2. Ative:
    • Subsistema Windows para Linux.
    • Plataforma de Máquina Virtual.

Depois disso, reinicie o computador.

3. Escolhendo e instalando a distribuição

O WSL permite instalar distribuições populares do Linux, como Ubuntu, Debian, Kali Linux e muitas outras. Para ver uma lista das distribuições disponíveis, execute:

wsl --list --online

Você verá uma lista de distribuições disponíveis:


PS C:\Users\Admin> wsl --list --online
The following is a list of valid distributions that can be installed.
Install using 'wsl.exe --install <Distro>'.

NAME                            FRIENDLY NAME
Ubuntu                          Ubuntu
Debian                          Debian GNU/Linux
kali-linux                      Kali Linux Rolling
Ubuntu-18.04                    Ubuntu 18.04 LTS
Ubuntu-20.04                    Ubuntu 20.04 LTS
Ubuntu-22.04                    Ubuntu 22.04 LTS
Ubuntu-24.04                    Ubuntu 24.04 LTS
OracleLinux_7_9                 Oracle Linux 7.9
OracleLinux_8_7                 Oracle Linux 8.7
OracleLinux_9_1                 Oracle Linux 9.1
openSUSE-Leap-15.6              openSUSE Leap 15.6
SUSE-Linux-Enterprise-15-SP5    SUSE Linux Enterprise 15 SP5
SUSE-Linux-Enterprise-15-SP6    SUSE Linux Enterprise 15 SP6
openSUSE-Tumbleweed             openSUSE Tumbleweed

Para instalar, por exemplo, o Ubuntu, execute:

wsl --install -d Ubuntu

Após a instalação, inicie a distribuição para concluir a configuração (por exemplo, definir o nome de usuário e senha).


3. Configurando o WSL2 como padrão

Pra usar o WSL2 (o que é muito recomendado), tenha certeza de que o WSL2 está ativado. Configure ele como a versão padrão:

wsl --set-default-version 2

Se você já instalou uma distribuição com WSL1, você pode atualizar ela pra WSL2:

wsl --set-version <Nome_da_Distribuição> 2

Exemplo:

wsl --set-version Ubuntu 2

4. Integração do WSL com o Windows

O WSL se integra maravilhosamente com o Windows, permitindo usar os recursos de ambos os sistemas. Aqui estão os pontos principais:

1. Compartilhamento de arquivos

O WSL monta o sistema de arquivos do Windows no diretório /mnt. Por exemplo:

cd /mnt/c/Users/SeuNome

Você pode trabalhar com arquivos do Windows diretamente no Linux. Da mesma forma, é possível acessar arquivos do WSL no Windows através de um caminho como \\wsl$\<Nome_da_Distribuicao> no Explorer.

2. Usar comandos do Windows no Linux

Sim, você pode executar comandos do Windows diretamente no WSL. Por exemplo:

explorer.exe .

Isso vai abrir o diretório atual no Explorer.

3. Usar comandos do Linux no PowerShell

O WSL permite que você execute comandos do Linux diretamente no PowerShell. Por exemplo:

wsl ls

5. Usando o WSL no desenvolvimento real

Trabalhando com servidor web

Você pode iniciar um servidor Nginx ou Apache no WSL e acessá-lo pelo navegador no Windows. Por exemplo:

1. Instale o Nginx no WSL:

   sudo apt update
   sudo apt install nginx

2. Inicie o servidor:

   sudo service nginx start

3. Abra o navegador e vá para o endereço http://localhost.

Instalando o Docker

O WSL2 suporta completamente o Docker. Instale o Docker Desktop no Windows, ele será integrado automaticamente com o WSL2.


6. Comandos úteis do WSL

  • Ver distribuições instaladas:

    wsl --list --verbose
    

    Exibe todas as distribuições instaladas, suas versões e status.

  • Parar todas as distribuições:

    wsl --shutdown
    
  • Remover uma distribuição (cuidado!):

    wsl --unregister <Nome_Distribuição>
    
  • Abrir o WSL em um diretório específico:

    wsl ~/
    

7. Erros comuns e como resolvê-los

1. Erro: "WSL is not enabled"

Se aparecer a mensagem que o WSL não está habilitado, verifica se você ativou ele no "Painel de Controle" ou via PowerShell. Também confirma se o seu processador suporta virtualização (que precisa estar habilitada no BIOS).

2. Comando wsl --install não funciona

Isso pode ser por causa de uma versão antiga do Windows. Atualiza o sistema operacional para a versão mais recente.

3. Problemas para iniciar o Docker

Confirme que a sua distribuição está usando o WSL2, não o WSL1. Você pode verificar com:

wsl --list --verbose

4. Não é possível conectar ao servidor a partir do WSL

Verifica se o firewall do Windows não está bloqueando as conexões.


8. Tarefa prática

  1. Instale o WSL e a distribuição do Ubuntu.
  2. Verifique a versão do WSL da sua distribuição:
    wsl --list --verbose
    
  3. Crie um arquivo de texto test.txt no diretório /mnt/c/Users/SeuNome/Documents usando o WSL:

    echo "Olá, WSL!" > /mnt/c/Users/SeuNome/Documents/test.txt
    
  4. Visualize o conteúdo do arquivo através do PowerShell:

    type C:\Users\SeuNome\Documents\test.txt
    
  5. Desafio com estrela: Instale o Nginx, inicie-o e abra http://localhost no navegador.

E aí, você acabou de percorrer todo o caminho desde a instalação até o uso real do Linux no Windows. Com essa ferramenta, você pode configurar ambientes de trabalho para qualquer tarefa de maneira simples e rápida.

Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION