Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Immutable Page
  • Info
  • Attachments


Guida verificata con Ubuntu: 16.04 18.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Questa guida illustra la procedura per spostare in partizione separata la cartella /home, oppure altre directory quali /boot, /temp, /var ecc., senza reinstallare il sistema operativo.

Consultare invece questo paragrafo per reinstallare Ubuntu mantenendo una partizione /home preesistente, oppure per una nuova installazione impostando come /home (oppure /temp, /var ecc.) partizioni già esistenti e/o create in precedenza.

Si raccomanda di eseguire una copia di backup di tutti i propri dati prima di procedere con le operazioni descritte di seguito.

Descrizione

Spostare alcune cartelle in partizioni separate dalla / (root) può comportare alcuni vantaggi. Ne vengono di seguito elencati alcuni:

  • Mantenere un livello ottimale di efficienza del sistema;
  • Mantenere sotto controllo dimensioni e impostazioni delle partizioni separate;
  • Ripristinare facilmente files degli utenti e impostazioni dei programmi (salvati in /home) in caso di reinstallazione;

  • Proteggere i dati dell'utente in caso di perdita di dati (ad esempio in caso di guasti fisici al disco, oppure formattazioni accidentali della root di sistema);
  • Allungare il ciclo di vita di SSD, riducendone le scritture (ad esempio, spostando /home e /var su disco meccanico separato, verranno lì salvati i download dell'utente e la cache degli aggiornamenti di apt).

Guide di approfondimento

Le operazioni di seguito descritte comportano la conoscenza dei seguenti argomenti:

Procedura

Le operazioni di seguito descritte comprendono, in sintesi:

  • Verifica dello spazio disponibile
  • Modifica e/o predisposizione delle partizioni
  • Copia della/e cartella/e
  • Modifica del file /etc/fstab

  • Verifica del funzionamento
  • Eliminazione della/e cartella/e precedentemente utilizzate.

Nell'esempio di seguito riportato verrà spostata la cartella /etc/fstab, ma la procedura è applicabile anche ad altre cartelle quali /boot, /tmp, /etc/fstab, /usr, /var, /opt.

La partizione che ospiterà la cartella spostata dovrà essere sempre maggiore alla cartella di origine.
Si raccomanda di dedicare spazio adeguato per tutte le cartelle spostate.
Si raccomanda lo spostamento di /boot solo agli utenti esperti.

Verifica spazio utilizzato directory da spostare

Digitare nel terminale il comando:

du -kshP /home

L'output sarà simile al seguente:

1,3G    /home

per le cartelle diverse da /home sono necessari i diritti di amministrazione.

Verifica dimensione partizioni

Verificare e annotare la dimensione delle proprie partizioni digitando il seguente comando in un terminale:

df -h

L'output sarà simile al seguente:

File system            Dim. Usati Disp. Uso% Montato su
/dev/sda1              18G  4,4G   13G  26%  /
/dev/loop0             90M   90M     0  100% /snap/core/6130
/dev/loop1             91M   91M     0  100% /snap/core/6405

Modifica delle partizioni

  1. Se per creare lo spazio destinato alla nuova partizione è necessario ridurre la partizione di sistema / (root), utilizzare una DVD/USB live per compiere questa operazione.
    Se invece la partizione è già disponibile passare al punto successivo.

  2. Formattare la partizione di destinazione con lo stesso filesystem utilizzato per / (ext3, ext4, ecc.).

Copia della partizione

  1. Per montare la partizione appena creata, digitare il seguente comando nel terminale:

    sudo mkdir /media/home && sudo mount /dev/sdxx /media/home

    mettendo al posto di sdxx il nome della propria partizione.

  2. Copiare la vecchia /home nella nuova posizione digitando il seguente comando nel terminale:

    sudo cp -priv /home/nome_utente /media/home

    sostituendo a nome_utente il proprio nome utente. La durata del processo dipenderà dalla quantità di dati da trasferire.

  3. Verificare che la dimensione della /home originale e della sua copia coincidano confrontando i comandi

    df -h /home

    e

    df -h /media/home 

Modificare /etc/fstab/

  1. Ricavare l'UUID della partizione in cui è stata copiata la /home digitando il seguente comando in un terminale

    sudo blkid /dev/sdxx

    sostituendo sdxx con il nome della propria partizione.

  2. Il comando restituirà un output simile al seguente:

    /dev/sda8: UUID="41800cf0-acb6-4845-b05e-479e9258f25f" TYPE="ext4"
  3. Copiare la stringa appena ottenuta, ad esempio

    41800cf0-acb6-4845-b05e-479e9258f25f
  4. Creare una copia di backup di /etc/fstab:

    sudo cp /etc/fstab /etc/fstab.backup
  5. Aprire il file /etc/fstab con un editor di testo e con i privilegi di amministrazione.

  6. In una nuova riga inserire:

    UUID=uid /home ext4 defaults 0  2

    sostituendo uid con l'UUID individuato in precedenza.

  7. Salvare, chiudere il file e riavviare il sistema.

Verifica

Al riavvio, per verificare che la cartella /home sia stata effettivamente spostata, si può utilizzare il comando

df -h

che restituirà un output del tipo

File system            Dim. Usati Disp. Uso% Montato su
/dev/sda6             8,6G  4,0G  4,2G  49% /
none                  245M  256K  245M   1% /dev
none                  249M  112K  249M   1% /dev/shm
none                  249M   88K  249M   1% /var/run
none                  249M     0  249M   0% /var/lock
none                  249M     0  249M   0% /lib/init/rw
/dev/sda8             6,3G  1,4G  4,6G  24% /home
/dev/sda1             9,4G  1,7G  7,7G  18% /media/4E80F14880F136D5

in cui si vede che la /home si trova, in questo caso, in /dev/sda8.

Risoluzione di problemi

Se la procedura non dovesse aver avuto esito positivo, durante il boot del sistema ci si ritroverà di fronte ad un messaggio di errore simile al seguente:

L'unità disco per /home non è ancora pronta o non è presente

Per risolvere il problema premere il tasto M sulla tastiera. Comparirà quindi una shell di ripristino. A questo punto:

  1. Digitare il comando

    cp -f /etc/fstab.backup /etc/fstab

    per ripristinare il file /etc/fstab originale

  2. Riavviare quindi il sistema con il comando

    shutdown -r now

Il sistema sarà riavviato e si tornerà alla alla condizione originale. La partizione che è stata creata non verrà però eliminata.

Pertanto sarà possibile, a seconda dei casi, effettuare le verifiche al sistema per individuare la causa dell'errore oppure ripristinare la situazione precedente.

Eliminare i contenuti della vecchia /home

Se la procedura ha avuto esito positivo e si desidera liberare spazio, si possono eliminare i contenuti ancora presenti nella vecchia /home interna alla partizione di sistema (/) utilizzando un DVD o USB live.

Ulteriori risorse


CategoryHomepage