Um mergulho profundo nos recursos do WSL2

Windows e Linux são os dois sistemas operacionais (SO) mais populares. O Windows oferece uma abordagem amigável, mas a alta capacidade de personalização do Linux o torna a melhor escolha para desenvolvedores, pessoas produtivas e alunos.

Você precisa de virtualização dentro do Windows ou de uma inicialização dupla para acessá-los juntos.

No entanto, há um novo recurso do Windows que permite acessar facilmente o Linux no Windows.

Conheça o WSL2 – o subsistema do Windows para Linux entra em cena. É um recurso do Windows que permite acessar o Linux no Windows.

Este artigo se concentrará no WSL2. Vamos abordá-lo em detalhes, sua definição, finalidade, processo de instalação e como usá-lo de forma eficaz.

Vamos começar.

O que é o subsistema do Windows para Linux?

O Subsistema Windows para Linux permite acessar o ambiente GNU/Linux diretamente do terminal do Windows, eliminando a necessidade de inicialização dupla ou uso de ferramentas de virtualização. Com ele, você pode acessar o kernel do Linux. Isso significa que você pode usar os recursos do Linux diretamente do Windows, incluindo ferramentas de linha de comando, aplicativos e utilitários.

O WSL 2 é o subsistema Windows mais recente que oferece melhores recursos e velocidade do que o WSL1 (lançado com o Windows 10). Além disso, a maioria das instalações do Windows vem pré-instalada com o WSL. Para usá-lo, você precisa ativá-lo.

Sob o capô, o WSL2 usa a tecnologia de máquina virtual Hyper-V do Windows. Isso torna o WSL2 Linux compatível, resultando em velocidades de execução quase 20 vezes mais rápidas do que o WSL1.

Resumindo, o WSL2 é o subsistema Windows mais recente para Linux, oferecendo aos usuários do Windows acesso direto ao kernel do Linux.

Introdução ao WSL2

Ao longo de nosso tutorial, também usaremos o Windows Terminal, uma opção prática, mas recomendada para trabalhar com terminais no Windows. É um terminal moderno, rápido e eficiente para usuários que desejam trabalhar com ferramentas de linha de comando e WSL.

Requisitos do PC

Nem todos os PCs podem executar o WSL2. Seu sistema deve oferecer suporte à virtualização para executar o WSL2. Isso porque o WSL2 usa o Hyper-V sob o capô.

Você também deve usar uma CPU de 64 bits com suporte a SLAT (conversão de endereço de segundo nível). Quase todas as CPUs modernas o suportam.

Quanto ao espaço em disco, você precisa de pelo menos 1 GB de espaço livre.

Ativando a virtualização do BIOS

Se você atender aos requisitos de hardware, deverá ativá-lo no BIOS da placa-mãe.

Entre no BIOS pressionando as teclas do teclado, como F2, Del ou F10.

No BIOS, você deve encontrar e habilitar Secure Virtual Machines (SVM) da AMD/Tecnologia de Virtualização VTx da Intel. Feito isso, reinicie a máquina.

Se precisar de mais esclarecimentos, confira as instruções detalhadas em meu outro post, Como instalar o Ubuntu no Windows 10 usando o Hyper-V.

Habilitando recursos do Windows para WSL2

Com os requisitos de hardware atendidos, agora é hora de habilitar o WSL2 no Windows.

  5 maneiras de fazer bom uso do seu iPhone 4 obsoleto

O primeiro passo é verificar a versão do Windows. Isso nos ajudará a saber se o seu Windows é compatível com WSL ou não.

Para fazer isso, pressione CMD + R no teclado e digite “winver”. Ele mostrará sua versão do Windows.

Se você estiver usando o Windows 10, provavelmente está usando o WSL1. No entanto, para a maioria dos usuários do Windows 11, é WSL2.

Todas as versões do Windows 10 e 11 suportam o WSL2, exceto o Windows S, pois ele é voltado para a segurança e tem a virtualização desabilitada.

Se você estiver usando o Windows S, deverá mudar para outra versão, como Windows Home ou Pro.

Para fazer isso, vá para Configurações> Atualização e segurança> Ativação para alterar seu sistema operacional.

Além disso, você deve ter a atualização mais recente do Windows instalada. Ele garantirá compatibilidade e suporte completos para WSL2. Para atualizar seu sistema, vá para Configurações > Windows Update.

Para usar o WSL2, você precisa habilitar vários recursos do Windows.

Vá para Painel de controle > Programas e recursos. Abaixo dele, você encontrará “Ativar ou desativar recursos do Windows”. Clique nele e uma nova janela, “Recursos do Windows”, será aberta.

Lá, procure por “Hyper-V”, “Virtual Machine Platform” e “Windows Subsystem for Linux”.

Em seguida, ele solicitará uma reinicialização para que as alterações entrem em vigor.

Você também pode ativá-lo executando o seguinte comando.

$ dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

$ dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

Instalando o WSL2

Com todos os pré-requisitos cobertos, agora é hora de instalar o WSL.

Abra o Terminal do Windows (Windows 10) ou o Windows PowerShell (Windows 11) e digite o seguinte comando.

$ wsl

#saída

Copyright (c) Microsoft Corporation. All rights reserved.

Usage: wsl.exe [Argument]

Arguments:
…..

Isso significa que o WSL está disponível, mas não ativado.

Agora, para instalar o WSL, execute o seguinte comando com privilégios de administrador.

$ wsl --install

#saída

PS C:UsersLogan99> wsl --install

Installing: Virtual Machine Platform
Virtual Machine Platform has been installed.
Installing: Windows Subsystem for Linux
Windows Subsystem for Linux has been installed.
Installing: Ubuntu
Ubuntu has been installed.
The requested operation is successful. Changes will not be effective until the system is rebooted.

Observação: você pode não ver isso, considerando que os habilitou por meio dos recursos do Windows. Em vez disso, você deve obter a seguinte saída. (Se o fizer, pule para a próxima seção).

Ubuntu is already installed.
Launching Ubuntu...
Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username:
New password:
Retype new password:

Para verificar a versão do WSL, digite o comando wsl –version.

$ wsl --version

#saída

WSL version: 1.1.6.0

Kernel version: 5.15.90.1

WSLg version: 1.0.50

MSRDC version: 1.2.3770

Direct3D version: 1.608.2-61064218

DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp

Windows version: 10.0.22621.1413

Como você notará, a versão 1.1.6.0 do WSL já vem pré-instalada. Portanto, se não funcionar e gerar um erro, o WSL não está instalado.

Para mudar para WSL2, execute o seguinte comando.

$ wsl --set-default-version 2

Como nosso sistema já possui o WSL pré-instalado, recebemos esta mensagem.

Você também pode instalar o WSL na Windows Store. Primeiro, abra a Loja e pesquise “Windows Subsystem for Linux”.

Clique em “Obter”. e aguarde a instalação.

Depois de instalado, você pode clicar em “Abrir”, abrirá um Terminal do Windows com a mensagem “O Windows Subsystem para Linux não possui distribuições instaladas”.

Instalando a distribuição no WSL

Com o WSL instalado, é hora de instalar as distribuições do Linux.

Por padrão, o WSL instala a versão Ubuntu LTS. Para fazer isso, você precisa executar o seguinte comando.

$ wsl --install

Ele começará a instalar o Ubuntu. Ele solicitará que você defina um novo nome de usuário e senha do UNIX durante a instalação.

  O que significa “NGL” e como usá-lo?

Você receberá um prompt do Ubuntu Linux quando a instalação estiver concluída. Aqui, você pode usar todos os comandos do Linux. Vamos verificar a versão do Ubuntu.

$ lsb_release -a

#saída

No LSB modules are available.

Distributor ID: Ubuntu

Description:    Ubuntu 22.04.1 LTS

Release:        22.04

Codename:       jammy

É isso! Agora você tem acesso ao kernel do Linux.

Para sair da distribuição, você precisa digitar o seguinte comando.

$ exit

#saída

[email protected]:/mnt/c/Users/Logan99$ exit

logout

Instalando mais distros

Da mesma forma, você pode instalar outras distros como Fedora, Debian e OracleLinux_8_5. Para ver as opções de distro disponíveis, digite o seguinte comando.

$ wsl --list --online

Para instalar o Debian, precisaremos digitar o seguinte comando.

$ wsl --install -d Debian

Or

$ wsl.exe --install Debian

Como o Ubuntu, ele também solicitará que você instale um nome de usuário e uma senha.

#saída

Agora, vamos verificar a versão do Debian.

$ cat /etc/issue

#saída

$ Debian GNU/Linux 11 n l

Mas e o Fedora? Ele não é listado quando você usa o comando wsl –list –online.

Bem, você também pode instalar distros da loja do Windows.

Abra a Windows Store e digite Linux distros; ele listará todos os disponíveis. Aqui, você pode ver apenas as distros oficiais suportadas.

Para suporte de distribuição não oficial, você precisa pesquisar manualmente. No entanto, essas distribuições não oficiais podem apresentar erros e não ser 100% seguras. Portanto, use-o apenas para fins experimentais.

Clique em “Instalar” para disponibilizá-lo em seu sistema.

Configurando a Distro Padrão

Se você quiser ver a lista de distros disponíveis, você pode listá-los com o seguinte comando.

$ wsl --list

A palavra-chave “Padrão” em torno do Ubuntu significa que a distro padrão do Linux é iniciada quando você digita “wsl” no prompt de comando.

Para alterar a distro padrão, digite o seguinte comando.

$ wsl --setdefault <DistroName>

Portanto, para definir o Debian como nossa distro padrão, precisamos digitar o seguinte comando.

$ wsl --setdefault Debian

Então, da próxima vez que você digitar wsl no terminal, você iniciará o Debian.

Mudando a versão do WSL para a distribuição

Por padrão, as distros usam WSL2. Para listar suas distros instaladas atualmente e sua versão WSL, digite o seguinte comando.

$ wsl --list --verbose

#saída

NAME      STATE           VERSION

* Ubuntu    Stopped         2

  Debian    Stopped         2

Aqui, o * refere-se à instalação padrão do Linux.

Agora, para alterar a versão do WSL de 2 para 1, digite:

$ wsl --set-version Ubuntu 1

E, se você quiser voltar para 2 de 1, digite:

$ wsl --set-vesion Ubuntu 2

Observação: pode levar algum tempo para que a conversão ocorra. Durante a conversão, não feche a janela.

Lançamento de distribuições específicas com nomes de usuário diferentes

E se você quiser lançar uma distro específica? Para fazer isso, você precisa digitar o seguinte comando.

$ wsl -d <DistroName>

Or

$ wsl --distribution <DistroName>

Para iniciar o Ubuntu, digite:

$ wsl -d Ubuntu

Se você deseja iniciá-lo com um nome de usuário específico, é necessário adicionar –user seguido do nome do usuário.

$ wsl -d <DistroName> --user <UserName>

Por exemplo, para iniciar o Debian com um nome de usuário “root”.

$ wsl -d Debian --user root

Observação: iniciar a distro com um usuário inexistente receberá um erro “Usuário não encontrado”.

Atualize o Linux

Você pode atualizar sua distribuição Linux digitando o seguinte comando:

$ sudo apt update

$ sudo apt upgrade

Além disso, você também pode procurar atualizações do kernel do Linux para WSL:

$ wsl --update

Configurando o Visual Studio Code com WSL2

Você também pode configurar o VS Code para trabalhar com o WSL. Dessa forma, você pode acessar o terminal WSL diretamente do VS Code. Ele pode ajudá-lo a desenvolver aplicativos em aplicativos baseados em Linux enquanto acessa utilitários e cadeias de ferramentas específicos do Linux.

  Como ocultar favoritos na página de nova guia do Safari no iPhone e iPad

Além disso, você também pode ter acesso a ferramentas de produtividade específicas do Windows enquanto aproveita os recursos do VS Code.

Para fazê-lo funcionar, você deve instalar o pacote de extensão Remote Development. Você também pode procurá-lo diretamente no VS Code, procurando por seu nome na guia de extensão.

Se você estiver trabalhando localmente, poderá configurá-lo acessando o menu VS Code. A partir daí, escolha Exibir > Terminal.

Ele vai abrir o terminal. Você encontrará o símbolo > ao lado do símbolo “+”. Clique nele e você encontrará os terminais WSL listados.

Aqui, você também pode selecionar “Perfil padrão”.

Isso é possível porque o VS Code pode acessar diretamente \wsl$ e quaisquer depuradores em execução no localhost.

Trabalhando com aplicativos gráficos e WSL2

Para trabalhar com aplicativos gráficos, você deve instalar os drivers corretos para o WSL2. Intel, AMD e Nvidia oferecem um driver para WSL para que os aplicativos gráficos baseados em Linux possam funcionar sem problemas.

No entanto, você ainda encontrará problemas com essa abordagem. Em primeiro lugar, esses aplicativos gráficos podem ter alguns recursos que não funcionam. Além disso, muitos aplicativos podem não funcionar, fazendo com que você procure alternativas.

Resumindo, é principalmente um método de tentativa e erro, onde você pode gastar muito tempo.

Você pode verificar o guia WSL2 sobre como trabalhar com aplicativos gráficos usando o Ubuntu.

Docker Desktop WSL2 no Windows

Se você não deseja configurar localmente usando o Hyper-V, pode usar o Docker Desktop, que oferece suporte oficial ao WSL2. Com ele, você pode configurar um fluxo de trabalho mais rápido para usar as ferramentas do Docker diretamente no Windows. Para saber mais, confira o guia aqui.

Por que a Microsoft está levando o Linux a sério?

A Microsoft é uma empresa proprietária. Ele cria soluções como o Windows em um ambiente fechado e deseja que os usuários usem o Windows em vez do Linux.

No entanto, em 2016, eles anunciaram um compromisso com o Open Source. A visão mudou no início de 2001, quando Steve Ballmer chamou o Linux de “câncer”.

Em 2023, as coisas mudaram. A Microsoft adota o Linux diretamente em seu ecossistema. Eles anunciaram o WSL2 em maio de 2019 e introduziram o WSL2 em outubro de 2021 na Windows Store. Eles também lançaram o WSL2 v1.0 em novembro de 2022.

Eles também tornaram os softwares da Microsoft, como Edge e Teams, acessíveis aos usuários do Linux. Eles também estão contribuindo ativamente para o kernel do Linux e são membros de um produto da Linux Foundation.

Todas essas dicas da Microsoft levando o Linux a sério. No entanto, alguns céticos não acham que a Microsoft ame o Linux.

Resumindo, a Microsoft está interessada no Linux. Seu subsistema Window é a prova de que eles se preocupam com o Linux e o código aberto. Mas, mais importante, ele nos diz que eles querem que seus usuários tenham acesso direto ao kernel do Linux sem a necessidade de usar a virtualização ou fazer uma inicialização dupla para um sistema operacional Linux.

Palavras Finais

Na era de “qual sistema operacional é melhor para desenvolvedores”, os desenvolvedores podem escolher um caminho para acessar ambos. O WSL2 fornece acesso ao Kernel do Linux por meio de diferentes distribuições do Linux. Além disso, é rápido e funciona com Docker.

Atualmente, o WSL2 está em desenvolvimento ativo, resolvendo problemas de compatibilidade e dando mais poder às mãos dos desenvolvedores. Assim, podemos dizer que o futuro parece promissor com o WSL2, e a Microsoft está tomando todas as medidas para tornar o kernel do Linux acessível aos usuários do Windows.

Em seguida, confira as distribuições do Linux para saber como administrador de sistema e desenvolvedor.