Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "rafbor/Prova1"
Differenze tra le versioni 7 e 33 (in 26 versioni)
Versione 7 del 04/04/2025 07.45.42
Dimensione: 5227
Autore: rafbor
Commento:
Versione 33 del 01/05/2025 08.15.23
Dimensione: 10894
Autore: rafbor
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 3: Linea 3:
<<BR>>
<<Include(NuoviStrumentiWiki/PaginaDiProva)>>
<<Indice>>
<<Informazioni(forum="https://forum.ubuntu-it.org/viewtopic.php?f=46&t=658138"; rilasci="22.04 24.04")>>
Linea 4: Linea 8:
{{{#!html
<hr class="portale" />
<h1 class="titoloPortale">Programmazione</h1>
= Introduzione =
'''Distrobox''' è un'applicazione innovativa che consente di eseguire più distribuzioni '''Linux''' sullo stesso sistema in modo semplice ed efficace. Utilizzando contenitori, '''Distrobox''' facilita l'installazione e la gestione di diverse distribuzioni senza richiedere configurazioni complesse o partizioni separate. Gli utenti possono così testare, sviluppare o eseguire applicazioni in un ambiente isolato, beneficiando delle funzionalità native di ciascuna distribuzione. '''Distrobox''' integra anche strumenti per la condivisione di file e risorse tra l'host e i contenitori, offrendo grande flessibilità.

= Installazione =
== Da repository ==
'''Distrobox''' è presente nei '''repository''' delle seguenti versioni di '''Ubuntu''':
|| '''Ubuntu''' || '''Distrobox''' ||
|| 24.04 || 1.7.0 ||
|| 24.10 || 1.7.2.1 ||
|| 25.04 || 1.8.1.2 ||
[[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://distrobox|distrobox]].<<BR>>
Per altre versioni di '''Ubuntu''' o per ottenere l'ultima versione di '''Distrobox''', utilizzare il metodo alternativo.

{{{#!wiki note
'''Distrobox''' è disponibile per ulteriori rilasci di '''Ubuntu''' nonché in altre versioni tramite '''[[https://en.wikipedia.org/wiki/PPA|PPA]]'''. Per maggiori informazioni, consultare [[https://launchpad.net/ubuntu/+source/distrobox/+index#|questa pagina]] e cliccare in fondo alla pagina su "''Other versions of 'distrobox' in untrusted archives.''".
}}}
== Metodo alternativo ==

La versione più recente dell'applicazione '''Distrobox''' può essere installata/disinstallata direttamente tramite uno script, con l'uso limitato all'utente comune o disponibile all'intero sistema tramite l'utente [[https://wiki.ubuntu-it.org/AmministrazioneSistema/PrivilegiDiAmministrazione|amministratore]].

 0. '''Utente comune''':
   * Per installare digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
wget -qO- https://raw.githubusercontent.com/89luca89/distrobox/main/install | sh
}}}
   * Per disinstallare digitare nel terminale il seguente comando:{{{
wget -qO- https://raw.githubusercontent.com/89luca89/distrobox/main/uninstall | sh
}}}
 0. '''Utente amministratore''':
   * Per installare digitare nel terminale il seguente comando:{{{
wget -qO- https://raw.githubusercontent.com/89luca89/distrobox/main/install | sudo sh
}}}
   * Per disinstallare digitare nel terminale il seguente comando:{{{
wget -qO- https://raw.githubusercontent.com/89luca89/distrobox/main/uninstall | sudo sh
Linea 9: Linea 43:
<<Include(NuoviStrumentiWiki/ForumProgrammazione)>>
<<Indice>>
<<BR>>
= Utilizzazione =
== Comandi di base ==
Di seguito sono elencati i comandi di base (senza tutte le opzioni) e le relative descrizioni:
Linea 13: Linea 47:
= Ambienti di sviluppo = ||<:55%> '''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, imponendo l'icona. ||
|| '''distrobox-rm''' ''NOME-CONTENITORE'' || Cancellare 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. ||
Linea 15: Linea 58:
 * [[/AndroidSdk|Android Sdk]]: installare e configurare '''Android SDK''' su Ubuntu.
 * [[/Aptana|Aptana]]: guida all'installazione di '''Aptana'''.
 * [[/BlazorWebAssembly|Blazor WebAssembly|]]: framework per creare applicazioni web basate su .NET e C#.
 * [[/Cms|CMS]]: guida ai principali Content Management System ('''Joomla''', '''Droopal''', ecc..).
 * [[/Eclipse|Eclipse]]: un ambiente di sviluppo in grado di supportare molti linguaggi di programmazione.
 * [[/Gambas|Gambas]]: come installare e sviluppare facilmente applicazioni in Basic.
 * [[/Lazarus|Lazarus]]: IDE/RAD multipiattaforma basato su !FreePascal in stile Delphi.
 * [[/Mapnik|Mapnik]]: realizzazione di mappe vettoriali.
 * [[/Matlab|Matlab]]: linguaggio Matlab.
 * [[/RenPy|Ren'Py]]: software per la creazione di avventure grafiche in '''Python'''.
 * [[/RootCern|ROOTCern]]: come configurare e installare le librerie '''ROOT''' del '''CERN'''.
 * [[/RubyOnRails|Ruby on Rails]]: come installare e configurare '''Ruby on Rails'''.
 * [[Server/Xampp|XAMPP]]: come configurare un ambiente '''LAMP''' (Linux Apache MySQL PHP).
 * [[/Zope|Zope]]: guida all'installazione di '''Zope3'''.
||<:55%> '''Comandi all'interno della distrobox''' ||<:> '''Descrizione''' ||
|| '''distrobox-export --app''' ''NOME-APPLICAZIONE'' || Esportazione di 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 ||
Linea 30: Linea 64:
= Ambienti di produzione = Per maggiori dettagli su come utilizzare i comandi, visitare il [[https://distrobox.it/|sito web ufficiale]].
Linea 32: Linea 66:
 * [[/NodeJs|NodeJs]]: installazione del framework per l'utilizzo server-side di '''!JavaScript'''. == Esempio ==
=== 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 [[https://github.com/89luca89/distrobox/blob/main/docs/compatibility.md#containers-distros|immagini di contenitori]]. Altri sono disponibili seguendo i link di [[https://github.com/toolbx-images/images?tab=readme-ov-file#what-about-arch-linux-fedora-rhel-and-ubuntu-images|questa pagina]].<<BR>>
In sostanza, per un contenitore '''Ubuntu''', abbiamo le seguenti scelte:
||<:> '''Ubuntu''' ||<:30%> '''Immagini (Toolbox)''' ||<:10%#FFFFFF>||<:> '''Ubuntu''' ||<:50%> '''Immagini (Docker)''' ||
|| || ||<#FFFFFF>||<:> '''14.04''' ||<:> ubuntu:14.04 ||
||<:> '''16.04''' ||<:> quay.io/toolbx/ubuntu-toolbox:16.04 ||<#FFFFFF>||<:> '''16.04''' ||<:> ubuntu:16.04 ||
||<:> '''18.04''' ||<:> quay.io/toolbx/ubuntu-toolbox:18.04 ||<#FFFFFF>||<:> '''18.04''' ||<:> ubuntu:18.04 ||
||<:> '''20.04''' ||<:> quay.io/toolbx/ubuntu-toolbox:20.04 ||<#FFFFFF>||<:> '''20.04''' ||<:> ubuntu:20.04 o ubuntu:focal ||
||<:> '''22.04''' ||<:> quay.io/toolbx/ubuntu-toolbox:22.04 ||<#FFFFFF>||<:> '''22.04''' ||<:> ubuntu:22.04 o ubuntu:jammy ||
||<:> '''24.04''' ||<:> quay.io/toolbx/ubuntu-toolbox:24.04 ||<#FFFFFF>||<:> '''24.04''' ||<:> ubuntu:24.04 o ubuntu:noble o ubuntu:latest ||
|| || ||<#FFFFFF>||<:> '''24.10''' ||<:> ubuntu:24.10 o ubuntu:oracular ||
|| || ||<#FFFFFF>||<:> '''25.04''' ||<:> ubuntu:25.04 o ubuntu:plucky ||
Per creare un contenitore standard, chiamato `Ubuntu2504` basato su un'immagine '''docker''' `ubuntu:25.04`, digitare nel [[AmministrazioneSistema/Terminale|terminale]] il comando:{{{
distrobox-create --name Ubuntu2504 --image ubuntu:25.04
}}}
Tuttavia, è preferibile creare contenitori di sistema, in cui il contenitore si comporta in modo più simile a una '''VM''' completa che a un contenitore di applicazioni, utilizzando il parametro `--init`. All'interno si avranno un init separato, una sessione utente, demoni e così via. Cioè, aggiugiendo `--init --additional-packages "systemd libpam-systemd"` al comando precedente:{{{
user@desktop:~$ distrobox-create --name Ubuntu2504 --image ubuntu:25.04 --init --additional-packages "systemd libpam-systemd"
Image ubuntu:25.04 not found.
Do you want to pull the image now? [Y/n]:
Resolved "ubuntu" as an alias (/etc/containers/registries.conf.d/shortnames.conf)
Trying to pull docker.io/library/ubuntu:25.04...
Getting image source signatures
Copying blob 1b3c8f62d074 done |
Copying config f51757c148 done |
Writing manifest to image destination
f51757c148c75f97fd1c48fb6b21ac37bd5108e91e4b1d528d5e62827cf76a36
Creating 'Ubuntu2504' using image ubuntu:25.04 [ OK ]
Distrobox 'Ubuntu2504' successfully created.
To enter, run:
Linea 34: Linea 103:
= Editor di codice = distrobox enter Ubuntu2504
user@desktop:~$
}}}
Si entra nel contenitore:
{{{
user@desktop:~$ distrobox enter Ubuntu2504
Starting container... [ OK ]
Installing basic packages... [ OK ]
Setting up devpts mounts... [ OK ]
Setting up read-only mounts... [ OK ]
Setting up read-write mounts... [ OK ]
Setting up host's sockets integration... [ OK ]
Integrating host's themes, icons, fonts... [ OK ]
Setting up distrobox profile... [ OK ]
Setting up sudo... [ OK ]
Setting up user groups... [ OK ]
Setting up kerberos integration... [ OK ]
Setting up user's group list... [ OK ]
Setting up existing user... [ OK ]
Setting up user home... [ OK ]
Ensuring user's access... [ OK ]
Setting up init system... [ OK ]
Firing up init system... [ OK ]
Linea 36: Linea 127:
 * [[Ufficio/EditorDiTesto|Editor di testo]]: breve raccolta dei più diffusi editor di testo.

= Shell =

 * [[/CambiareShell|Cambiare shell]]: cosa sono le shell e come abilitare quelle alternative a '''bash'''.
 * [[Programmazione/CambiareShell/Fish|Fish]]: guida all'installazione e all'utilizzo della shell alternativa '''fish'''.

= Linguaggi di programmazione =

 * [[/Script|Script]]: guida di base per la creazione generica di script.
 * [[/LinguaggioBash|Bash e lo scripting]]: nozioni di scripting per '''bash''', la shell predefinita in Ubuntu.
 * [[/CSharp|C#]]: muovere i primi passi con il linguaggio C#.
 * [[/Csound|CSound]]: linguaggio di programmazione per l'audio.
 * [[/Java|Java]]: abilitare Java su Ubuntu.
 * [[/Java/Oracle|Java Oracle]] installare Java Oracle su Ubuntu.
 * [[/ObjectiveCaml|OCaml]]: guida all'installazione dell'interprete, dell'ambiente di sviluppo e alla configurazione degli editor di testo.
 * [[/Php|PHP]]: muovere i primi passi con il linguaggio di programmazione '''PHP'''.
 * [[/Python|Python]]: muovere i primi passi con Python su Ubuntu.
 * [[/Ruby|Ruby]]: installazione del linguaggio di programmazione ad oggetti '''Ruby'''.
 * [[/Rust|Rust]]: installazione e gestione del linguaggio di programmazione '''Rust'''.

= Calcolo distribuito =

 * [[/Boinc|BOINC]]: guida all'installazione e alla configurazione.

= Strumenti e risorse per la programmazione =

 * [[/GnuDebugger|GNU debugger]]: guida all'utilizzo di '''GDB'''.
 * Creazione di pacchetti e altro materiale, per sviluppatori e il [[GruppoSviluppo|Gruppo Sviluppo]]:
  * [[https://ubuntu.com/community/contribute/application-development|Application-Development]] su Ubuntu.com Community.
  * [[https://ubuntu.com/community/contribute/ubuntu-development|Ubuntu-Development]] su Ubuntu.com Community.
  * [[https://wiki.ubuntu.com/UbuntuDevelopment|UbuntuDevelopment]] su Ubuntu.com Wiki.
 * [[/DebootstrapChroot|Guida a debootstrap]]: come creare e gestire un sottosistema virtuale con '''schroot'''.
 * [[/Debug|Operazioni di debug]]: come effettuare il ''debug'' delle applicazioni.

 * Per consultare le migliori guide online sul proprio linguaggio di programmazione preferito, consultare [[http://forum.ubuntu-it.org/viewtopic.php?t=21490|questo topic]].

== Installare da sorgenti ==

 * [[/Checkinstall|Checkinstall]]: guida alla pacchettizzazione di un programma compilato da sorgenti.
 * [[/Compilatori|Compilatori]]: come installare e configurare i compilatori in Ubuntu.
 * [[/CMakeGui|CMakeGui]]: guida all'utilizzo di CMake tramite interfaccia.
 * [[AmministrazioneSistema/InstallareProgrammi/DaSorgenti|Installare da sorgenti]]: installare un programma dal codice sorgente.
 * [[/Pbuilder|Pbuilder]]: guida alla creazione dei pacchetti con '''pbuilder'''.

== Controllo della versione ==

 * [[/Bazaar|Bazaar]]: sistema di controllo di versione distribuito per lo sviluppo di progetti software.
 * [[/Cvs|Cvs]]: gestione base di un repository CVS.
 * [[/Git|Git]]: guida introduttiva alle funzionalità di '''Git'''.
 * [[/Subversion|Subversion]]: installare, configurare e utilizzare un repository con svn.

= Localizzazione =

 * [[/Linguist|Linguist]]: editor per la traduzione di file `.ts` in applicazioni con supporto alle librerie '''Qt'''.
 * [[/Poedit|Poedit]]: semplice editor di file `.po` e `.pot` per la traduzione di applicazioni che includono il supporto a '''Gettext'''.
 * [[Ufficio/Stardict|Stardict]]: guida all'utilizzo del dizionario per le lingue.

{{{#!html
<hr class="portale-footer" />
<hr class="portale" />
Container Setup Complete!
user@Ubuntu2504:~$
}}}
{{{#!wiki tip
Si può vedere che ci si trova nel contenitore perché il testo alla sinistra del simbolo '''$''' è cambiato, è diventato:
''NOME_USER@NOME_CONTENITORE''
}}}
Visualizzare la versione, per confermare che siamo sulla '''25.04''':
{{{
user@Ubuntu2504:~$ cat /etc/os-release | grep VERSION
VERSION_ID="25.04"
VERSION="25.04 (Plucky Puffin)"
VERSION_CODENAME=plucky
Linea 99: Linea 142:
Ora possiamo eseguire le normali operazioni di aggiornamento con `sudo apt update` e `sudo apt full-upgrade` e poi cambiare la lingua predefinita in italiano:{{{
sudo apt install language-pack-it
}}}
Se il pacchetto ''language-pack-it-base'' non viene installato automaticamente come dipendenza, installarlo con:{{{
sudo apt install language-pack-it-base
}}}
Generare i file di lingua:{{{
sudo locale-gen it_IT.UTF-8
}}}
Si deve modificare un file di configurazione, si può usare l'editor di testo [[Ufficio/EditorDiTesto/Nano|nano]] già installato, ma per una maggiore facilità d'uso, useremo l'editor [[Ufficio/EditorDiTesto/Micro|micro]]:{{{
sudo apt install micro
}}}
{{{
sudo micro /etc/default/locale
}}}
Modificare il file in modo da avere le seguenti 3 righe:{{{
LANG=it_IT.UTF-8
LANGUAGE=it_IT:it
LC_ALL=it_IT.UTF-8
}}}
Salvare il file (`Ctrl-S`), uscire (`Ctrl-Q`), e in fine digitare:{{{
source /etc/default/locale
}}}
{{{#!wiki note
In caso di errore con l'ultimo comando, uscire dal contenitore con `logout` e poi rientrare con `distrobox enter Ubuntu2504`.
}}}
Adesso installiamo una versione più recente di un'applicazione. Ad esempio [[AmministrazioneSistema/InstallareProgrammi|installando]] [[Grafica/Gimp|Gimp]] ci ritroviamo con la versione `deb` più recente:{{{
user@Ubuntu2504:~$ dpkg -l | grep gimp
ii gimp 3.0.2-1
}}}
mentre sull'host l'ultima versione nei repository è la '''2.10.36'''.

== Interfaccia grafica ==
'''Distrobox''' può essere utilizzato tramite una '''GUI''' con [[https://github.com/Dvlv/BoxBuddyRS|BoxBuddy]].

= Ulteriori risorse =
 * [[https://distrobox.it/|Sito ufficiale]]
 * [[https://github.com/89luca89/distrobox|Distrobox su Github]]
 * [[https://flathub.org/apps/io.github.dvlv.boxbuddyrs|BoxBuddy su Flathub]]
Linea 100: Linea 183:
CategoryProgrammazione CategoryNuoviDocumenti


Attenzione! Questa è una Pagina di prova. Le informazioni riportate potrebbero essere incomplete, errate e potenzialmente pericolose. Per contribuire alla realizzazione di questa pagina consultare la discussione di riferimento.

Guida verificata con Ubuntu: 22.04 24.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Distrobox è un'applicazione innovativa che consente di eseguire più distribuzioni Linux sullo stesso sistema in modo semplice ed efficace. Utilizzando contenitori, Distrobox facilita l'installazione e la gestione di diverse distribuzioni senza richiedere configurazioni complesse o partizioni separate. Gli utenti possono così testare, sviluppare o eseguire applicazioni in un ambiente isolato, beneficiando delle funzionalità native di ciascuna distribuzione. Distrobox integra anche strumenti per la condivisione di file e risorse tra l'host e i contenitori, offrendo grande flessibilità.

Installazione

Da repository

Distrobox è presente nei repository delle seguenti versioni di Ubuntu:

Ubuntu

Distrobox

24.04

1.7.0

24.10

1.7.2.1

25.04

1.8.1.2

Installare il pacchetto distrobox.
Per altre versioni di Ubuntu o per ottenere l'ultima versione di Distrobox, utilizzare il metodo alternativo.

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.".

Metodo alternativo

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

  1. Utente comune:

    • Per installare digitare nel terminale il seguente comando:

      wget -qO- https://raw.githubusercontent.com/89luca89/distrobox/main/install | sh
    • Per disinstallare digitare nel terminale il seguente comando:

      wget -qO- https://raw.githubusercontent.com/89luca89/distrobox/main/uninstall | sh
  2. Utente amministratore:

    • Per installare digitare nel terminale il seguente comando:

      wget -qO- https://raw.githubusercontent.com/89luca89/distrobox/main/install | sudo sh
    • Per disinstallare digitare nel terminale il seguente comando:

      wget -qO- https://raw.githubusercontent.com/89luca89/distrobox/main/uninstall | sudo sh

Utilizzazione

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, imponendo l'icona.

distrobox-rm NOME-CONTENITORE

Cancellare 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

Esportazione di 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, visitare il sito web ufficiale.

Esempio

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. Altri 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

Per creare un contenitore standard, chiamato Ubuntu2504 basato su un'immagine docker ubuntu:25.04, digitare nel terminale il comando:

distrobox-create --name Ubuntu2504 --image ubuntu:25.04

Tuttavia, è preferibile creare contenitori di sistema, in cui il contenitore si comporta in modo più simile a una VM completa che a un contenitore di applicazioni, utilizzando il parametro --init. All'interno si avranno un init separato, una sessione utente, demoni e così via. Cioè, aggiugiendo --init --additional-packages "systemd libpam-systemd" al comando precedente:

user@desktop:~$ distrobox-create --name Ubuntu2504 --image ubuntu:25.04 --init --additional-packages "systemd libpam-systemd"
Image ubuntu:25.04 not found.
Do you want to pull the image now? [Y/n]: 
Resolved "ubuntu" as an alias (/etc/containers/registries.conf.d/shortnames.conf)
Trying to pull docker.io/library/ubuntu:25.04...
Getting image source signatures
Copying blob 1b3c8f62d074 done   | 
Copying config f51757c148 done   | 
Writing manifest to image destination
f51757c148c75f97fd1c48fb6b21ac37bd5108e91e4b1d528d5e62827cf76a36
Creating 'Ubuntu2504' using image ubuntu:25.04   [ OK ]
Distrobox 'Ubuntu2504' successfully created.
To enter, run:

distrobox enter Ubuntu2504
user@desktop:~$

Si entra nel contenitore:

user@desktop:~$ distrobox enter Ubuntu2504
Starting container...                            [ OK ]
Installing basic packages...                     [ OK ]
Setting up devpts mounts...                      [ OK ]
Setting up read-only mounts...                   [ OK ]
Setting up read-write mounts...                  [ OK ]
Setting up host's sockets integration...         [ OK ]
Integrating host's themes, icons, fonts...       [ OK ]
Setting up distrobox profile...                  [ OK ]
Setting up sudo...                               [ OK ]
Setting up user groups...                        [ OK ]
Setting up kerberos integration...               [ OK ]
Setting up user's group list...                  [ OK ]
Setting up existing user...                      [ OK ]
Setting up user home...                          [ OK ]
Ensuring user's access...                        [ OK ]
Setting up init system...                        [ OK ]
Firing up init system...                         [ OK ]

Container Setup Complete!
user@Ubuntu2504:~$ 

Si può vedere che ci si trova nel contenitore perché il testo alla sinistra del simbolo $ è cambiato, è diventato: NOME_USER@NOME_CONTENITORE

Visualizzare la versione, per confermare che siamo sulla 25.04:

user@Ubuntu2504:~$ cat /etc/os-release | grep VERSION
VERSION_ID="25.04"
VERSION="25.04 (Plucky Puffin)"
VERSION_CODENAME=plucky

Ora possiamo eseguire le normali operazioni di aggiornamento con sudo apt update e sudo apt full-upgrade e poi cambiare la lingua predefinita in italiano:

sudo apt install language-pack-it

Se il pacchetto language-pack-it-base non viene installato automaticamente come dipendenza, installarlo con:

sudo apt install language-pack-it-base

Generare i file di lingua:

sudo locale-gen it_IT.UTF-8

Si deve modificare un file di configurazione, si può usare l'editor di testo nano già installato, ma per una maggiore facilità d'uso, useremo l'editor micro:

sudo apt install micro

sudo micro /etc/default/locale

Modificare il file in modo da avere le seguenti 3 righe:

LANG=it_IT.UTF-8
LANGUAGE=it_IT:it
LC_ALL=it_IT.UTF-8

Salvare il file (Ctrl-S), uscire (Ctrl-Q), e in fine digitare:

source /etc/default/locale

In caso di errore con l'ultimo comando, uscire dal contenitore con logout e poi rientrare con distrobox enter Ubuntu2504.

Adesso installiamo una versione più recente di un'applicazione. Ad esempio installando Gimp ci ritroviamo con la versione deb più recente:

user@Ubuntu2504:~$ dpkg -l | grep gimp
ii  gimp    3.0.2-1 

mentre sull'host l'ultima versione nei repository è la 2.10.36.

Interfaccia grafica

Distrobox può essere utilizzato tramite una GUI con BoxBuddy.

Ulteriori risorse


CategoryNuoviDocumenti