Come Eseguire Qualsiasi Programma da Qualsiasi Distro Linux con Distrobox

Distrobox è un semplice strumento CLI che può avviare qualsiasi distro Linux all’interno del tuo computer. A differenza di VirtualBox, Distrobox crea “overlay” che ti permettono di eseguire qualsiasi programma da diverse distro Linux sopra il tuo sistema attuale. Qui, vediamo cosa rende Distrobox così interessante e come puoi installarlo e usarlo.
Perché Usare Distrobox per Gestire Più Distro Linux
Il principale punto di forza di Distrobox è che esegue i guest sopra l’host invece di utilizzare un’istanza isolata. Rispetto a una VM tradizionale, questo ti consente di accedere senza problemi alla home directory dell’host, ai suoi dispositivi esterni e persino al suo server di visualizzazione.

Questo livello di integrazione tra il guest e l’host ti consente di fare alcune cose uniche con Distrobox. Ad esempio, puoi installare un’applicazione GUI su un guest Ubuntu ed esportare la sua scorciatoia sul desktop del tuo sistema host. Come scrittore tecnico, trovo questa funzione utile quando testo e confronto diverse app.

Infine, Distrobox è anche incredibilmente leggero. Questo lo rende ideale per sistemi di fascia bassa che non hanno le risorse per eseguire più VM. Dalla mia esperienza, eseguire guest Ubuntu e Fedora per circa sei ore ha consumato solo circa 900 MB della RAM totale del mio host.
Installazione e Test di Distrobox
Alla base, Distrobox funziona sfruttando i demoni dei container come Docker e Podman per gestire le sue distro. Per questo motivo, il primo passo per distribuire Distrobox è installare Docker sulla tua macchina.
Conferma che il demone Docker sia in esecuzione sul tuo sistema controllando la sua versione:
docker--versionAggiungi il tuo utente attuale al gruppo di sistema docker:
sudo adduser $USERdockerScarica e installa Distrobox utilizzando il gestore pacchetti del tuo sistema:
sudo apt install distroboxAssicurati di aver installato correttamente Distrobox eseguendolo con il flag -h.

Distribuire la Tua Prima Distro Overlay
Con Distrobox avviato e funzionante, puoi ora installare il tuo primo overlay di distro Linux. A tal fine, gli sviluppatori forniscono un’immagine OCI di Fedora 39 come media di installazione predefinito.
Inizia eseguendo Distrobox con il sottocomando create seguito dal nome e dal nome host che desideri per il tuo nuovo overlay:
distrobox create --name YOUR-OVERLAY-NAME-HERE --hostname YOUR-CONTAINER-NAME-HEREDigita “y”, quindi premi Invio per scaricare e distribuire la tua nuova distro overlay.

Nota: a seconda dell’hardware del tuo sistema, potrebbe richiedere tra 5 e 10 minuti per installare completamente il sistema guest in Distrobox.
Una volta completato, esegui il seguente comando per avviare e caricare la tua nuova distro overlay:
distrobox enter YOUR-OVERLAY-NAME-HEREConferma che ora sei all’interno del sistema overlay controllando il nome host nel tuo prompt del terminale.
Per chiudere una sessione overlay, premi Ctrl + D nel terminale guest, quindi esegui distrobox stop seguito dal nome del tuo overlay.
Nota a margine: esplora il potere di Fedora e Red Hat Enterprise Linux consultando la nostra guida completa sul gestore pacchetti DNF.
Eseguire un’immagine Linux personalizzata su Distrobox
Oltre a Fedora 39, è possibile eseguire altre distro Linux compatibili con OCI all’interno di Distrobox, ad esempio Arch Linux.
Per installare una distro Linux personalizzata, esegui il sottocomando create con il flag -i seguito da un link a un’immagine compatibile con OCI. Nel mio caso, userò l’immagine Arch Linux Toolbx da Quay.io come base per il mio overlay:
distrobox create --name arch-linux --hostname mte-archlinux-container --image quay.io/toolbx/arch-toolbox:latest
Nota: puoi trovare un elenco di distro compatibili e i loro link per il download sulla pagina Github dello sviluppatore.
Dopo che è stato completato, avvia l’overlay e accedi al tuo nuovo sistema Arch Linux:
distrobox enter arch-linuxProprio come con Fedora, conferma che ora stai eseguendo Arch Linux controllando il nome host del tuo terminale.

Installazione ed Esecuzione di Pacchetti su Distrobox
Uno dei vantaggi della stretta integrazione di Distrobox è che i sistemi guest si comportano come se fossero nativi della macchina host. Per questo motivo, installare ed eseguire qualsiasi programma in Distrobox è simile a un’installazione Linux regolare.
Per installare un pacchetto su un guest Distrobox, assicurati prima di essere attualmente all’interno della tua distro overlay:
distrobox enter arch-linuxNota: puoi elencare gli overlay disponibili sul tuo sistema eseguendo distrobox ls.
Usa il gestore pacchetti della tua distro guest per installare il programma di cui hai bisogno. In questo caso, eseguirò sudo pacman -S neofetch per installare neofetch sul mio sistema guest Arch Linux.

Testa il tuo nuovo pacchetto eseguendolo una volta all’interno dell’overlay e un’altra volta all’esterno.

Puoi anche installare un programma dall’esterno dell’overlay Distrobox. Per questo, usa il sottocomando enter seguito dall’operatore --:
distrobox enter --name arch-linux --sudo pacman -s neofetchQuesta funzione si estende all’esecuzione di programmi al di fuori del tuo sistema guest. Ad esempio, il seguente comando eseguirà neofetch sul mio guest Arch Linux e visualizzerà il suo output nel mio sistema host Ubuntu:
distrobox enter --name arch-linux -- neofetch
Buono a sapersi: usi un gestore pacchetti diverso? Dai un’occhiata alla nostra pratica scheda di riferimento sui gestori pacchetti per diverse distro Linux.
Esportare un Programma Overlay nel Sistema Host
Mentre l’operatore -- è ottimo per compiti semplici e una tantum, è anche possibile creare “profili” Distrobox che ti consentono di eseguire qualsiasi programma guest direttamente dalla tua macchina Linux host. Questo è utile se desideri avere accesso costante a un programma all’interno del tuo sistema guest Distrobox.
Per esportare sulla tua macchina host, prima vai all’interno del sistema in cui hai installato il tuo programma:
distrobox enter arch-linuxAssicurati che la tua applicazione funzioni correttamente dall’interno del container. Nel mio caso, voglio esportare la mia installazione di Emacs all’interno di Arch Linux.

Esegui distrobox-export con il flag --app seguito dal nome del programma che desideri esportare:
distrobox-export --app emacsTesta la tua nuova app esportata andando al launcher delle applicazioni del tuo sistema host e cliccando sull’icona del programma.

Installare ed eseguire sistemi operativi guest con Distrobox è solo un esempio di ciò che puoi fare con Docker e la tecnologia dei container. Approfondisci come funziona questo programma consultando il nostro primer su come eseguire e gestire i container Docker.
Crediti immagine: Kari Shea tramite Unsplash. Tutte le modifiche e gli screenshot di Ramces Red.