Guida verificata con Ubuntu: 22.04 24.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Distrobox è un wrapper per Docker, Lilipod e Podman (di default usa quest'ultimo, che consente utilizzo di contenitori come utente non root).
Attraverso l'utilizzo di container non isolati dall'host, questo strumento consente di eseguire più distribuzioni GNU/Linux sullo stesso sistema in modo semplice ed efficace.
Distrobox integra anche strumenti per la condivisione di file e risorse tra l'host e i contenitori, offrendo grande flessibilità: i container così creati saranno strettamente integrati col sistema host, avendo accesso al kernel (compresi driver e moduli), ai processi, alla HOME dell'utente, all'hardware, ai drive interni ed esterni, alle applicazioni grafiche (sia con X11 che Wayland) e all'audio.

Distrobox, quindi, facilita l'installazione e la gestione di diverse distribuzioni, senza richiedere sistemi virtualizzati, partizioni separate e configurazioni complesse. Gli utenti possono così eseguire, testare o sviluppare applicazioni in un ambiente isolato, beneficiando delle funzionalità native di ciascuna distribuzione, oppure utilizzando versioni e/o librerie più o meno recenti (senza far ricorso a Snap, Flatpak e AppImage).
È rilasciato con licenza GPL v3.0.

Installazione

Da repository

Installare il pacchetto distrobox.

Distrobox è presente nei repository ufficiali delle seguenti versioni di Ubuntu:

Ubuntu

Distrobox

25.04

1.8.1.2

24.10

1.7.2.1

24.04

1.7.0

Per altre versioni di Ubuntu o per ottenere l'ultima versione di Distrobox, utilizzare il metodo da script.

Distrobox è disponibile per ulteriori rilasci di Ubuntu nonché in altre versioni tramite PPA. Per maggiori informazioni, consultare questa pagina e cliccare in fondo alla pagina su «Other versions of 'distrobox' in untrusted archives».

Tramite script

La versione più recente dell'applicazione può essere installata/disinstallata direttamente tramite uno script, con l'uso limitato all'utente comune o disponibile all'intero sistema tramite l'utente amministratore.

Utilizzo

Comandi di base

Di seguito sono elencati i comandi di base (senza tutte le opzioni) e le relative descrizioni:

Comandi al di fuori della distrobox

Descrizione

distrobox-assemble --file /my/custom/path.ini

Per creare o distruggere i contenitori in lotti, in base a un file manifest.

distrobox-create --name NOME-CONTENITORE --image NOME-OS:VERSIONE

Creazione di un contenitore.

distrobox-enter NOME-CONTENITORE

Entrare nel contenitore.

distrobox-ephemeral --name NOME-CONTENITORE --image NOME-OS:VERSIONE

Creare un contenitore temporale, distruggerlo quando si esce dalla shell.

distrobox generate-entry NOME-CONTENITORE --icon /path/to/icon.png

Creare sull'host un lanciatore del desktop per un contenitore, impostando un'icona.

distrobox-rm NOME-CONTENITORE

Eliminare il contenitore.

distrobox-list

Elencare i contenitori attivi.

distrobox-stop NOME-CONTENITORE

Fermare il contenitore.

distrobox-upgrade NOME-CONTENITORE

Eseguire un aggiornamento del contenitore usando il gestore di pacchetti del contenitore.

Comandi all'interno della distrobox

Descrizione

distrobox-export --app NOME-APPLICAZIONE

Esportare un lanciatore di un'applicazione da un contenitore all'host.

distrobox-host-exec COMANDO

Eseguire comandi/programmi dall'host mentre si è all'interno del contenitore.

distrobox-init

Installare le dipendenze mancanti, impostare l'utente e i gruppi, montare le directory dall'host, ecc.

logout

Uscire dal contenitore

Per maggiori dettagli su come utilizzare i comandi, consultare la documentazione ufficiale.

Per il comando distrobox-create è disponibile l'opzione generica --home /percorso/custom/home (da adattare con il percorso effettivo), che permette di impostare la HOME del container in un percorso personalizzato, separato da quella dell'utente host.
Può tornare utile in alcuni casi, come quando si desidera mantenere separate le impostazioni di un programma installato sia nell'host sia nel container.
Altri consigli utili sono presenti in questa pagina.

Esempio 1: creazione di un contenitore Ubuntu

In questo esempio, l'host è Ubuntu 24.04:

user@desktop:~$ cat /etc/os-release | grep VERSION
VERSION_ID="24.04"
VERSION="24.04.2 LTS (Noble Numbat)"
VERSION_CODENAME=noble

Scegliere il guest tra le seguenti immagini di contenitori. Altre sono disponibili seguendo i link di questa pagina.
In sostanza, per un contenitore Ubuntu abbiamo le seguenti scelte:

Ubuntu

Immagini (Toolbox)

Ubuntu

Immagini (Docker)

-

-

14.04

ubuntu:14.04

16.04

quay.io/toolbx/ubuntu-toolbox:16.04

16.04

ubuntu:16.04

18.04

quay.io/toolbx/ubuntu-toolbox:18.04

18.04

ubuntu:18.04

20.04

quay.io/toolbx/ubuntu-toolbox:20.04

20.04

ubuntu:20.04 o ubuntu:focal

22.04

quay.io/toolbx/ubuntu-toolbox:22.04

22.04

ubuntu:22.04 o ubuntu:jammy

24.04

quay.io/toolbx/ubuntu-toolbox:24.04

24.04

ubuntu:24.04 o ubuntu:noble o ubuntu:latest

-

-

24.10

ubuntu:24.10 o ubuntu:oracular

-

-

25.04

ubuntu:25.04 o ubuntu:plucky

Esempio 2: creazione di un contenitore Void Linux

In questo caso, con lo stesso host dell'esempio precedente, verrà creato un contenitore di una distribuzione rolling, sfruttando così il vantaggio di avere software sempre disponibile nella versione più recente.
Verrà presa a titolo di esempio la distribuzione Void con la seguente immagine: ghcr.io/void-linux/void-glibc-full:latest. Si potrà perciò utilizzare il sistema in modo completamente diverso da Ubuntu, ossia con gli strumenti tipici della distribuzione guest (shell, set di applicazioni, specifici comandi, formato e gestore di pacchetti, repository ecc.).

Interfaccia grafica

Distrobox può essere utilizzato tramite un'interfaccia grafica con l'applicazione BoxBuddy.
Per maggiori informazioni consultare la pagina del progetto.

Ulteriori risorse


CategoryVirtualizzazione

Virtualizzazione/Distrobox (l'ultima modifica è del 01/06/2025 09.40.23, fatta da andreas-xavier)