Como Executar Qualquer Programa de Qualquer Distro Linux com Distrobox

Distrobox é uma ferramenta CLI simples que pode inicializar qualquer distro Linux dentro do seu computador. Ao contrário do VirtualBox, o Distrobox cria “sobreposições” que permitem que você execute qualquer programa de diferentes distros Linux em cima do seu sistema atual. Aqui, vamos conferir o que faz o Distrobox funcionar e como você pode instalá-lo e usá-lo.
Por Que Usar Distrobox para Gerenciar Múltiplas Distros Linux
O maior ponto de venda do Distrobox é que ele executa convidados em cima do host em vez de usar uma instância isolada. Comparado a uma VM tradicional, isso permite que você acesse facilmente o diretório home do seu host, seus dispositivos externos e até mesmo seu servidor de exibição.

Esse nível de integração entre o convidado e o host permite que você faça uma série de coisas únicas com o Distrobox. Por exemplo, você pode instalar um aplicativo GUI em um convidado Ubuntu e exportar seu atalho para a área de trabalho do seu sistema host. Como escritor técnico, acho esse recurso útil ao testar e comparar diferentes aplicativos.

Por fim, o Distrobox também é incrivelmente leve. Isso o torna ideal para sistemas de baixo desempenho que não têm os recursos para executar várias VMs. Na minha experiência, executar convidados Ubuntu e Fedora por cerca de seis horas consumiu apenas cerca de 900 MB da RAM total do meu host.
Instalando e Testando o Distrobox
Em sua essência, o Distrobox funciona aproveitando daemons de contêiner, como Docker e Podman, para gerenciar suas distros. Por causa disso, o primeiro passo para implantar o Distrobox é instalar o Docker na sua máquina.
Confirme que o daemon do Docker está em execução no seu sistema verificando sua versão:
docker--versionAdicione seu usuário atual ao grupo do sistema docker:
sudo adduser $USERdockerBaixe e instale o Distrobox usando o gerenciador de pacotes do seu sistema:
sudo apt install distroboxCertifique-se de que você instalou corretamente o Distrobox executando-o com a flag -h.

Implantando Sua Primeira Distro de Sobreposição
Com o Distrobox em funcionamento, você pode agora instalar sua primeira sobreposição de distro Linux. Para isso, os desenvolvedores fornecem uma imagem OCI do Fedora 39 como seu meio de instalação padrão.
Comece executando o Distrobox com o subcomando create seguido pelo nome e pelo hostname que você deseja para sua nova sobreposição:
distrobox create --name YOUR-OVERLAY-NAME-HERE --hostname YOUR-CONTAINER-NAME-HEREDigite “y”, em seguida pressione Enter para baixar e implantar sua nova distro de sobreposição.

Nota: dependendo do hardware do seu sistema, pode levar entre 5 a 10 minutos para instalar completamente o sistema convidado no Distrobox.
Uma vez feito, execute o seguinte comando para inicializar e carregar sua nova distro de sobreposição:
distrobox enter YOUR-OVERLAY-NAME-HEREConfirme que você está agora dentro do sistema de sobreposição olhando para o hostname no seu prompt de terminal.
Para fechar uma sessão de sobreposição, pressione Ctrl + D no terminal do convidado, em seguida execute distrobox stop seguido pelo nome da sua sobreposição.
Em uma nota lateral: explore o poder do Fedora e do Red Hat Enterprise Linux consultando nosso guia abrangente sobre o gerenciador de pacotes DNF.
Executando uma imagem Linux personalizada no Distrobox
Além do Fedora 39, é possível executar outras distros Linux compatíveis com OCI dentro do Distrobox, por exemplo, Arch Linux.
Para instalar uma distro Linux personalizada, execute o subcomando create com a flag -i seguida por um link para uma imagem compatível com OCI. No meu caso, vou usar a imagem Arch Linux Toolbx do Quay.io como base para minha sobreposição:
distrobox create --name arch-linux --hostname mte-archlinux-container --image quay.io/toolbx/arch-toolbox:latest
Nota: você pode encontrar uma lista de distros compatíveis e seus links de download na página do Github do desenvolvedor.
Depois que estiver pronto, inicialize a sobreposição e entre no seu novo sistema Arch Linux:
distrobox enter arch-linuxAssim como com o Fedora, confirme que você está agora executando o Arch Linux verificando o hostname do seu terminal.

Instalando e Executando Pacotes no Distrobox
Um dos benefícios da integração estreita do Distrobox é que os sistemas convidados se comportam como se fossem nativos da máquina host. Por causa disso, instalar e executar qualquer programa no Distrobox é semelhante a uma instalação Linux regular.
Para instalar um pacote em um convidado Distrobox, primeiro certifique-se de que você está atualmente dentro da sua distro de sobreposição:
distrobox enter arch-linuxNota: você pode listar as sobreposições disponíveis no seu sistema executando distrobox ls.
Use o gerenciador de pacotes da sua distro convidada para instalar o programa que você precisa. Neste caso, vou executar sudo pacman -S neofetch para instalar o neofetch no meu sistema convidado Arch Linux.

Teste seu novo pacote executando-o uma vez dentro da sobreposição e outra fora dela.

Você também pode instalar um programa de fora da sobreposição do Distrobox. Para isso, use o subcomando enter seguido pelo operador --:
distrobox enter --name arch-linux --sudo pacman -s neofetchEsse recurso se estende à execução de programas fora do seu sistema convidado. Por exemplo, o seguinte comando executará o neofetch no meu convidado Arch Linux e exibirá sua saída no meu sistema host Ubuntu:
distrobox enter --name arch-linux -- neofetch
Bom saber: usando um gerenciador de pacotes diferente? Confira nosso prático cheatsheet de gerenciadores de pacotes para diferentes distros Linux.
Exportando um Programa de Sobreposição para o Sistema Host
Enquanto o operador -- é ótimo para tarefas simples e pontuais, também é possível criar “perfis” do Distrobox que permitem que você execute qualquer programa convidado diretamente da sua máquina Linux host. Isso é útil se você quiser ter acesso constante a um programa dentro do seu sistema convidado Distrobox.
Para exportar para sua máquina host, primeiro entre no sistema onde você instalou seu programa:
distrobox enter arch-linuxCertifique-se de que seu aplicativo está funcionando corretamente de dentro do contêiner. No meu caso, quero exportar minha instalação do Emacs dentro do Arch Linux.

Execute distrobox-export com a flag --app seguida pelo nome do programa que você deseja exportar:
distrobox-export --app emacsTeste seu aplicativo recém-exportado indo até o lançador de aplicativos do seu sistema host e clicando no ícone do programa.

Instalar e executar sistemas operacionais convidados com o Distrobox é apenas um exemplo do que você pode fazer com Docker e tecnologia de contêiner. Mergulhe fundo em como este programa funciona consultando nosso guia sobre como executar e gerenciar contêineres Docker.
Crédito da imagem: Kari Shea via Unsplash. Todas as alterações e capturas de tela por Ramces Red.