Crea una partizione /home separata (ad esempio, su USB) per Ubuntu 24.04
Questo tutorial mostra come separare /home
da un file system Ubuntu esistente, in una singola partizione del disco o anche in una chiavetta USB, preservando tutti i dati personali.
Linux può avere una partizione /home
separata, utile per reinstallare il sistema o anche provare diverse distribuzioni Linux senza perdere la maggior parte delle impostazioni personalizzate, configurazioni, download, ecc.
Durante l'installazione di Linux, di solito c'è un'opzione per creare /home
separato. Se non l'hai fatto, ecco la guida passo passo che ti mostra come eseguire il trucco in seguito.
NOTA: questo tutorial è testato in Ubuntu 24.04 LTS, anche se dovrebbe funzionare nelle distribuzioni Linux più popolari, come Debian, Fedora, Arch e altre.
Passaggio 1. Crea una partizione del disco per /home
Innanzitutto, avvia Dischi GNOME. Scegli l'unità disco di destinazione dal riquadro di sinistra. Se c'è abbastanza spazio libero non allocato a destra, selezionalo e vai al passaggio successivo per creare una partizione di file Ext4.
In caso contrario, formattare una partizione esistente o ridurla per liberare spazio. Nel mio caso, avrei utilizzato la mia chiavetta USB per /home
, così posso portarla ovunque e utilizzarla anche su macchine diverse.
Tuttavia, l'unità USB dispone di un file system NTFS che NON è consigliato per il file system Linux per motivi di sicurezza. In questo caso, riduci per liberare spazio, preservando i dati esistenti nell'unità, oppure formatta per utilizzare la partizione completa che rimuoverà comunque tutti i dati su di essa.
Una volta che hai abbastanza spazio libero sull'unità disco, selezionalo e fai clic su "+" per creare una partizione su di esso. Quindi, scegli il formato sul tipo di file system Ext4, con o senza crittografia LUKS come desideri.
Una volta terminato, devi copiare l'UUID della partizione che utilizzerai per /home
.
Se la crittografia è abilitata, sblocca e utilizza l'UUID della metà superiore (dispositivo contrassegnato come /dev/sdXY
o /dev/nvmeXnYpZ
) per /etc/crypttab
e l'UUID della metà inferiore (contrassegnato come /dev/mapper/xxxxxxx
) per /etc/fstab
nel passaggio successivo.
Passaggio 2: copiare i contenuti utente esistenti nella partizione del disco separata
Dopo aver creato la partizione separata, fare clic su Sblocca (se crittografato) e montarla utilizzando il file manager o Gnome Disks.
Quindi, apri il terminale (Ctrl+Alt+T) ed esegui il comando per copiare tutti i contenuti degli utenti esistenti nella nuova partizione separata. L'opzione del comando -a
è necessaria per preservare le informazioni su proprietà, timestamp, ecc.
sudo cp -a /home/* /media/ji/xxxxxxxx
NOTA: sostituisci /media/ji/xxxxxxx
nel comando con il punto di montaggio. Controllalo in Gnome Disk, file manager o eseguendo il comando mount |grep /media/$USER
.
Successivamente, rinomina (sposta) l'attuale /home
come backup:
sudo mv /home /home_backup
NOTA: dopo aver eseguito questo comando mv
, tutte le cartelle personali saranno inaccessibili fino al riavvio con un nuovo /home
separato. È meglio chiudere le tue app e interrompere qualsiasi download prima di eseguire questo comando.
Infine, ricrea una directory /home
vuota come punto di montaggio per la nuova partizione separata ad ogni avvio:
sudo mkdir /home
Passo 3: Configura per far conoscere al tuo sistema la nuova partizione /home
1. /etc/fstab
è il file di configurazione per dire a Linux di montare tutte le partizioni di file all'avvio.
Per modificare il file, apri il terminale (Ctrl+Alt+T) ed esegui il comando:
sudo gnome-text-editor /etc/fstab
Sostituisci gnome-text-editor
con il tuo editor preferito o utilizza nano
editor di testo a riga di comando che funziona con la maggior parte di Linux.
Quando si apre, aggiungi una nuova riga per dirgli di montare la partizione specificata (tramite UUID) come /home
separato:
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /home ext4 defaults 0 2
NOTA: sostituire l'ID di conseguenza! Controllalo utilizzando "Gnome Disks" e, se la crittografia LUKS è abilitata, utilizza l'UUID della metà inferiore contrassegnata come dispositivo /dev/mapper/luks-xxxxxxx
Per l'editor di testo nano
, premi Ctrl+S poi Ctrl+X per salvare ed uscire.
2. Se hai abilitato la crittografia LUKS per quella partizione, apri il terminale (Ctrl+Alt+T) ed esegui il comando per installare lo strumento di gestione richiesto.
sudo apt install cryptsetup
Quindi, modifica il file /etc/crypttab
tramite il comando:
sudo gnome-text-editor /etc/crypttab
Sostituisci anche gnome-text-editor
con nano
per desktop non GNOME.
Infine, aggiungi una nuova riga per dire al tuo Linux di sbloccarlo (ti chiederà di digitare la password) ad ogni avvio.
home_crypt UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx none luks,retries=3
Qui home_crypt
specifica il punto di montaggio sotto /dev/mapper
, puoi cambiarlo come preferisci. Inoltre, sostituisci l'UUID in base alla partizione crittografata (la metà superiore nel disco GNOME, contrassegnata come dispositivo /dev/sdXY o /dev/nvmeXnYpZ).
Al termine, salvare il file. E riavvia il computer per verificare.
Come ripristinare
Per ripristinare le modifiche e utilizzare /home
all'interno della partizione root, avvia Linux ed effettua l'accesso.
Quindi, modifica nuovamente i file /etc/fstab
e /etc/crypttab
e rimuovi le righe aggiunte nell'ultimo passaggio.
Quindi, riavvia il computer. Premi Ctrl+Alt+F3
(o F4/F5/F6) per passare alla console della riga di comando TTY, poiché la schermata di accesso potrebbe rifiutarsi di lasciarti entrare senza il contenuto della directory /home.
Nella console TTY, accedi con nome utente e password, quindi esegui il comando per ripristinare il backup:
sudo rm -R /home && sudo mv /home_backup /home
Se hai eliminato il backup e non c'è nulla da ripristinare, puoi scegliere di rigenerare una home utente pulita eseguendo il comando:
sudo mkhomedir_helper ji
Nel comando sostituisci ji
con il tuo nome utente ed esegui nuovamente questo comando ancora e ancora per altri utenti, se presenti.