Guias / setup-linux-wsl
Setup Linux (wsl)
Montando um ambiente Ubuntu no WSL pronto para desenvolvimento.
22 abr 2026· 6 min· 12 seções
Neste guia · 12 seções
O que vamos instalar?
Instalando o WSL
Após instalar o WSL primeiro precisamos habilitar alguns recursos do windows para que tudo funcione como esperado, para isso precisamos de uma janela do PowerShell no modo Administrador, logo após o Windows irá precisar reiniciar para concluir a instalação, reinicie e então volte para continuarmos.
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform, HypervisorPlatform -AllNo PowerShell, vamos instalar o WSL
wsl --installNa sua pasta de usuário C:\Users\{user} (%USERPROFILE%) crie um arquivo chamado .wslconfig com o conteúdo abaixo, esta configuração vai espelhar a rede do WSL na rede do Windows, possibilitando acesso ao WSL via LAN.
[wsl2]networkingMode=mirroreddnsTunneling=truenestedVirtualization=truelocalhostForwarding=trueCaso precise reiniciar o WSl para aplicar as alterações, utilize estes comandos no PowerShell
wsl --shutdown# ounet stop wslservicenet start wslserviceAliases & Path
Primeiro vamos baixar o vim (opcional) para editar alguns arquivos durante o processo
sudo apt install -y vimEntre no arquivo de aliases (caso não goste do vim, troque pelo nano ou outro)
vim ~/.bash_aliasesAdicione os atalhos e modifique conforme necessário, estes são alguns que eu gosto de utilizar (atenção para adicionar seu nome e email, isto vai ser importante mais tarde)
# Aliasesalias refresh='source ~/.bashrc && source ~/.bashrc'alias config='vim ~/.bash_aliases'alias update='sudo apt update && sudo apt -y upgrade'alias clean='sudo apt -y autoclean && sudo apt -y autoremove'
# Shortcutsalias q='exit'alias c='clear'alias home='cd ~/'alias chrome='google-chrome $@ &'alias google='google-chrome $@ &'alias toolbox='~/toolbox/bin/jetbrains-toolbox &'alias idea='~/.local/share/JetBrains/Toolbox/apps/intellij-idea/bin/idea &'alias studio='~/.local/share/JetBrains/Toolbox/apps/android-studio/bin/studio &'
# Varsexport USER_EMAIL='Your email here'export USER_NAME='Your name here'export ANDROID_HOME=$HOME/Android/Sdk
# PATHexport PATH=$PATH:$ANDROID_HOME/emulatorexport PATH=$PATH:$ANDROID_HOME/platform-toolsexport PATH=$PATH:/usr/local/go/binagora recarregue o arquivo para ter acesso a estes comandos
source ~/.bash_aliasescom estes aliases fica muito mais fácil daqui para frente, agora podemos utilizar o comando refresh para fazer isso
Pacotes básicos
updatesudo apt install nautilus -ysudo apt install git zip unzip fuse net-tools -yPara finalizar a configuração do git, é necessário configurar as informações do usuário
git config --global user.name "$USER_NAME"git config --global user.email "$USER_EMAIL"git config --global core.autocrlf truegit config --global pull.rebase trueChave SSH
Preencha seu email antes de digitar o comando e confirme ou insira os passos de senha como desejar.
ssh-keygen -t ed25519 -C "$USER_EMAIL"eval "$(ssh-agent -s)"ssh-add ~/.ssh/id_ed25519echocat ~/.ssh/id_ed25519.pubcopie a chave no final da execução, aí é só colar no github
Java
SDKman é com certeza absoluta a forma mais prática de instalar e gerenciar uma ou várias versões do java no Linux, mas também te ajuda a baixar Kotlin, Groovy, Maven, Gradle entre outras ferramentas.
curl -s "https://get.sdkman.io" | bashsource "$HOME/.sdkman/bin/sdkman-init.sh"sdk install javajava --versionA partir de agora utilize o comando sdk para gerenciar suas instalações, o SDKman também define a variável JAVA_HOME então não precisa se preocupar com isso
sdk --helpNode
Fast node manager, é um gerenciador de versões do Node recomendado no site oficial, então vamos utiliza-lo
curl -fsSL https://fnm.vercel.app/install | bashsource ~/.bashrcfnm install --ltsnode -vnpm -vA partir de agora utilize o comando fnm para gerenciar suas instalações
fnm --helpCaso queira baixar o pnpm
npm install -g pnpmGolang
Para instalar a versão mais atualizada verifique no site oficial a versão atual e atualize o comando de acordo com o número da versão (existe um pacote apt chamado golang-go, porém este costuma estar desatualizado)
export GO_VERSION='1.23.1'Com a versão definida na nossa variável podemos baixar somente copiando os comandos abaixo e no futuro executar o mesmo processo caso precisarmos atualizar o go
sudo rm -rf /usr/local/gowget https://go.dev/dl/go${GO_VERSION}.linux-amd64.tar.gzsudo tar -C /usr/local -xzf go${GO_VERSION}.linux-amd64.tar.gzrm go${GO_VERSION}.linux-amd64.tar.gzgo versionDocker
Ao instalar o Docker diretamente no wsl ao invés do docker desktop, fica muito mais prático utilizar o Docker como ele seria utilizado em uma máquina Linux e com cli. Caso prefira o Docker com interface gráfica e botões bonitinhos, pule esta etapa e instale o Docker desktop.
sudo apt install -y apt-transport-https ca-certificates curl software-properties-commoncurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpgecho "deb [signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/nullupdatesudo apt install -y docker-ce docker-ce-cli containerd.iosudo usermod -aG docker $USERApós a instalação, como o usuário foi modificado, feche o terminal e abra novamente, em caso de problemas verifique a instalação
docker --versionGoogle Chrome
após a instalação, poderemos utilizar os atalhos que configuramos antes, google, chrome ou o comando padrão google-chrome (este vai travar o terminar)
rm -rf ~/tmpmkdir ~/tmpcd ~/tmpwget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.debsudo apt install --fix-missing ./google-chrome-stable_current_amd64.debcleancd ..Intellij (Toolbox)
Baixe o Jetbrains toolbox, ele é um gerenciador de ferramentas da Jetbrains lá você pode baixa o Intellij (Goland, WebStorm…).
google-chrome https://www.jetbrains.com/pt-br/lp/toolbox/Agora vamos até a pasta de download descompactar e mover o arquivo para o lugar certo.
cd ~/Downloadstar -xvf jetbrains-toolbox-*.tar.gz # Descompactarm jetbrains-toolbox-*.tar.gz # Exclui o zipmv jetbrains-toolbox-* ~/toolbox # Move os arquivos para a pasta toolboxtoolboxPronto agora é só utilizar o comando toolbox configurado lá nos aliases e baixar o Intellij pela interface gráfica do Toolbox.
Após o download você pode utilizar o alias idea para abrir o Intellij Idea
Android Studio (Toolbox)
Vamos precisar do QEMU-KVM para fazer a emulação dentro do linux
sudo apt install qemu-kvmVamos checar se ficou tudo OK
kvm-okCaso esteja OK, vamos dar ao seu usuário acesso ao KVM
sudo adduser $USER kvmgrep kvm /etc/groupRecomendação: após esta alteração reinicie o WSL no powershell
wsl --shutdownAgora precisamos do Android Studio, vamos instalar ele através do toolbox
toolboxInstale o Android Studio de forma padrão, e agora instalar o emulador.
Após o download você pode utilizar o alias studio para abrir o Android Studio.
More Action > Virtual Device Manager > Create virtual device > Selecione um dispositivo (Recomendo: Medium device)
Atenção: Caso haja um aviso que seu usuário não tem acesso ao KVM, feche o Android Studio e o Toolbox e abra novamente em um novo terminal
VsCode
Caso queira utilizar o VSCode, instale diretamente no windows e utilize diretamente do Linux a partir do comando code, em caso de problemas com a sua instalação, remova os arquivos de configuração do Linux utilizando:
rm -rf ~/.vscode-*Agora você já tem o essencial instalado dentro do WSL. Parabéns✨
Happy coding 🧑💻