Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "Hardware/DispositiviPartizioni/SpostareHomePartizioneSeparata"
Differenze tra le versioni 31 e 32
Versione 31 del 26/11/2011 16.05.24
Dimensione: 8263
Commento: Indicizzazione pagina
Versione 32 del 26/11/2011 16.07.40
Dimensione: 6718
Commento: Modifiche di GiacomoFabris
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
## page was renamed from Muovere
## page was renamed from GuidaWiki/DocumentazioneModello
## page was renamed from MarcoRofei/Prova3
Linea 5: Linea 4:
<<BR>> <<WikiBanner(RichiestaRevisioneStilistica)>>
Linea 7: Linea 6:
<<Informazioni(rilasci="11.04 10.10 10.04"; forum="http://forum.ubuntu-it.org/index.php/topic,471852.0.html")>>
= Separare la /home dalla root / =
I vantaggi che derivano dal fatto di avere due partizioni dedicate e separate per la cartella `/home` e la cartella `/` sono, ad esempio:
 * Proteggere i dati dell'utente
 * Mantenere alta l'efficenza del sistema
 * Mantenere le impostazioni dei programmi installati in caso di una nuova installazione;
 * Mantenere sotto controllo le dimensioni e le caratteristiche delle partizioni `/home` e `/`
 * Poterle posizionare su due Hard Disk diversi per evitare che guasti Hardware possano provocare la perdita di tutti i dati.
Linea 8: Linea 15:
= HomeSpostarePartizioneDedicata = L'obiettivo di questa guida è di, a partire da un sistema in cui `/` e `/home` convivono nella stessa partizione, ottenere un sistema in cui `/` e `/home` siano posizionate in due differenti partizioni dell'Hard Disk, senza dover reinstallare '''Ubuntu'''.
Linea 10: Linea 17:
== I vantaggi di questa Guida == Prima di procedere, si consiglia di effettuare una [[AmministrazioneSistema/BackupDelSistema|copia di backup]] dei propri dati.
Linea 12: Linea 19:
Questa guida è stata liberamente tradotta dall'inglese ( https://help.ubuntu.com/community/Partitioning/Home/Moving ) per permettere di avere ulteriori punti di riferimento rispetto alle diverse informazioni già esistenti. Le Guide della Comunità sono un modo particolarmente utile di aiutare diverse persone in uno stesso momento. Questa guida: == Verificare lo spazio disponibile ==
Linea 14: Linea 21:
    * Ambisce a mantenere in funzione il sistema e a proteggere i dati in modo sicuro.
          o Se il sistema dovesse spegnersi inaspettatamente, andare in ibernazione o dovesse accadere qualcosa d'altro durante l'esecuzione di questa procedura, sarebbe sufficiente ri-avviare il sistema e continuare a lavorare. Questa d'altra parte è l'ambizione di questa guida.
    * Prepara partizioni e fstab prima, modificando fstab solo alla fine.
          o Le persone provano ed acquisiscono familiarità con gli strumenti fino a che non ci sia un "disastro" finale, e questo è un altro vantaggio della guida. Altre guide usano comandi mount, dopodichè spostano la /home e modificano fstab. Tuttavia se dovessimo scompaginare fstab a quel punto cruciale, qualora ri-avviassimo il sistema avremmo perso traccia dei files /home! Definire fstab prima e usare "sudo mount -a" per montare la partizione permette di verificare se il fstab modificato funziona in modo sicuro a quel punto del procedimento.
    * Usa rsync per spostare i files
          o Rsync è stato sviluppato per i backups di /home, e molto di più. E' in grado di mantenere le altre caratteristiche dei files come permessi, proprietà e data ultima modifica. Ci sono molte discussioni su quale sia il comando più opportuno per spostare i files/home, incluso quelle di un tempo in cui cp era considerato non adatto a questa funzione (apparentemente ometteva files?). Cp non era stato sviluppato come strumento potente per backup quanto invece la messa a punto di rsync. La soluzione perciò è stata quella di usare una combinazione di find e cpio.
 * Aprire un [[AmministrazioneSistema/RigaDiComando|terminale]] e verificare la dimensione della propria `/home` digitando il comando
{{{
du -kshP /home
}}}
Il comando restituirà la dimensione della cartella `home`, ad esempio: {{{
1,3G /home
}}}
Linea 21: Linea 29:
== La Guida == La partizione che ospiterà la cartella `/home` dovrà essere sempre maggiore alla cartella stessa.
Linea 23: Linea 31:
Configurare una /home su una partizione separata e dedicata offre dei benefici perchè le impostazioni, files e Scrivania saranno mantenuti anche durante l'aggiornamento, la re-installazione di Ubuntu o peggio qualche crash totale. Ciò potrebbe accadere perchè /home contiene le cartelle delle impostazioni e dei files di ciascun utente. Cioè tutti i suoi dati! Oltretutto, per sua impostazione una nuova installazione linux tende tipicamente a ripulire la partizione che è stata prescelta. Questo perciò implica un notevole trambusto per trovare e salvare altrove tutti i dati degli utenti. Fastidio che si può evitare con una /home separata in una partizione dedicata.  ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Grandi/info.png,,center)>> ||<style="padding:0.5em; border:none;">Si consiglia di dimensionare la partizione dedicata alla `/home` in modo che, dopo il trasferimento, restino almeno 4GB / 5GB di spazio libero. In questo modo si evita di trovarsi nelle condizioni di non poter più lavorare a causa dell'esaurimento dello spazio disponibile. ||
Linea 25: Linea 33:
 * Verificare lo spazio libero delle proprie partizioni. Allo scopo potrebbe essere utile un programma come [[Hardware/DispositiviPartizioni/PartizionamentoManuale|GParted]].
Linea 26: Linea 35:
== Configurare le Partizioni == == Modifica delle partizioni ==
Linea 28: Linea 37:
Queste informazioni vanno al di là dello scopo della guida. Preparazione: ricordare o scrivere la posizione della partizione, qualcosa come /sda3. E' stato suggerito di usare sia ext2, ext3 o ext4 piuttosto che vfat o ntfs. L'utilizzo di vfat non è supportato e potrebbe non funzionare, poichè vfat non supporta i permessi. Ntfs ha il vantaggio di essere journalizzato, come del resto ext3 & ext4, ma può anche essere letto facilmente da Windows. E' molto meno stabile di ext3 o ext4 perciò è veramente una questione di stabilità rispetto ad un accesso semplificato per Windows. In caso non si abbia bisogno del doppio-avvio con Windows o se sono disponibili ampi spazi nell'hard disk la scelta ovvia sarà quella di prediligere ext3 o 4, che sono molto più sicure.  * Ridimensionare la partizione che si desidera e crearne una nuova nello spazio liberato che si è creato. Questa nuova partizione ospiterà la `/home`.
 * Assicurarsi che la nuova partizione sia formattata con lo stesso File System della partizione dalla quale si estrarrà la `/home`.
Linea 30: Linea 40:
== Trovare l' uuid delle Partizioni == == Copia della /home nella nuova partizione ==
Linea 32: Linea 42:
Il codice uuid di tutte le partizioni si ottiene con questo comando a terminale:{{{ sudo blkid  * [[Hardware/DispositiviPartizioni/MontarePartizioni|Montare]] la nuova partizione creata attraverso il comando
{{{
sudo mkdir /media/home && sudo mount /dev/sdxx /media/home
Linea 34: Linea 46:
    A volte, per alcune versioni più vecchie di Ubuntu il comando "blkid" potrebbe non funzionare. In questi casi utilizzare invece Sostituire a `sdxx` il nome della partizione.
Linea 37: Linea 48:
{{{
sudo vol_id -u <partition> }}}
 * Copiare la home nella nuova posizione attraverso il comando
{{{
sudo cp -av /home/nome_utente /media/home
}}}
Sostituire a `nome_utente` il proprio nome utente.
Il processo potrebbe durare da qualche minuto a diverse ore, a seconda della quantità di dati da trasferire e della potenza del computer.
 * Verificare che la dimensione della `/home` originale e della sua copia coincidano confrontando i comandi{{{
df -h /home}}}{{{
df -h /media/home}}}
 * Attribuire i [[AmministrazioneSistema/PermessiFile|permessi]] alla nuova cartella attraverso il comando {{{
sudo chown $(id -u) /media/home/nome_utente}}}
Linea 40: Linea 60:
per esempio == UUID della partizione ==
Linea 42: Linea 62:
{{{
sudo vol_id -u /dev/sda3 }}}
 * Ricavare il nome della partizione in cui è stata copiata la `/home` con il comando
{{{
df -h /media/home
}}}
Il comando restituirà un output del tipo {{{
File system Dim. Usati Disp. Uso% Montato su
/dev/sda8 6,3G 1,4G 4,6G 24% /media/home
}}}
 * Ricavare l'UUID della partizione con il comando
{{{
sudo blkid /dev/sda8
}}}
Sostituire a `/dev/sda8` il nome della propria partizione.
Il comando restituirà un output del tipo{{{
/dev/sda8: UUID="41800cf0-acb6-4845-b05e-479e9258f25f" TYPE="ext4"
}}}
 * Copiare la stringa appena ottenuta, ad esempio
{{{
41800cf0-acb6-4845-b05e-479e9258f25f
}}}
Linea 45: Linea 83:
Ora prendere nota (ad esempio copiando e incollando in un file di testo) dell'identificativo uuid della partizione che è stata definita essere la nuova e futura partizione /home. == Modificare il file /etc/fstab ==
Linea 47: Linea 85:
== Configuare Fstab ==  * Creare una copia di backup del file
{{{
sudo cp /etc/fstab /etc/fstab.backup
}}}
 * Aprire il file `/etc/fstab` con un [[Ufficio/EditorDiTesto|editor di testo]] e con [[AmministrazioneSistema/PermessiFile|privilegi di amministratore]] {{{
sudo gedit /etc/fstab
}}}
 * Creare una nuova riga e inserire:
{{{
UUID=xxx /home ext4 relatime 0 2
}}}
Inserire al posto di `xxx` l'UUID ottenuto al passo precedente.
 * Verificare la correttezza degli UUID delle altre partizioni del sistema digitando, in una finestra di terminale, il comando
{{{
sudo blkid
}}}
e confrontando i valori con quelli presenti nel file `/etc/fstab`.
 
 * Salvare, chiudere il file e riavviare il sistema.
Linea 49: Linea 105:
Questi comandi dovranno: = Verifica =
Linea 51: Linea 107:
   1. Creare un backup di fstab. Il "$(date +%Y-%m-%d)" alla fine automaticamente abbina la data odierna di salvataggio al file.
   2. Confrontare fstab con quello nuovo, giusto per essere tranquilli che vada bene.
   3. Aprire l'editor di testo standard (gedit) in Ubuntu per modificare fstab. Notare che invece Kubuntu usa "kate" e Xubuntu usa "mousepad" ma è possibile usare l'editor di testo preferito.
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`.
Linea 55: Linea 125:
== Errori ==

Se la procedura non dovesse aver avuto esito positivo, durante il boot del sistema ci si ritroverà di fronte ad un messaggio di errore del tipo
Linea 56: Linea 129:
sudo cp /etc/fstab /etc/fstab.$(date +%Y-%m-%d)
cmp /etc/fstab /etc/fstab.$(date +%Y-%m-%d)
gksu gedit /etc/fstab }}}
L'unità disco per /home non è ancora pronta o non è presente
}}}
Linea 60: Linea 132:
e aggiungere ora all'interno queste linee di istruzioni Per ovviare al problema premere il tasto '''M''' sulla tastiera; comparirà quindi una shell di ripristino.
A questo punto:
 * Dare il comando
{{{
cp -f /etc/fstab.backup /etc/fstab
}}}
per ripristinare il file `/etc/fstab` originale
 * 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.
Linea 62: Linea 145:
{{{
# (identifier) (location, eg sda5) (format, eg ext3 or ext4) (some settings)
UUID=???????? /media/home ext3 nodev,nosuid 0 2 }}}
= Eliminazione della vecchia /home =
Linea 66: Linea 147:
Sostituendo ???????? con il numero UUID della partizione /home pre-definita. A questo punto, se la procedura ha avuto esito positivo, si può eliminare la vecchia `/home`.
Per fare ciò è necessario operare da LiveCD eliminando la cartella `/home` contenuta nella partizione di sistema (`/`).
Linea 68: Linea 150:
L'indirizzo usato in Fstab sarà temporaneo - perciò dovremo montare l'indirizzo temporaneo e copiare la home esistente in quello spazio. (/media/home resta inteso nel resto della guida). Se /media/home non esiste ancora, è necessario crearla con il comando: = Riferimenti =
 * http://perfab.wordpress.com/2010/03/06/separare-la-home-da-ubuntu/
Linea 70: Linea 153:
{{{
sudo mkdir /media/home }}}

Ora, montare la partizione con:

{{{
sudo mount -a }}}

Copiare /home nella nuova Partizione

{{{
sudo rsync -axS --exclude='/*/.gvfs' /home/. /media/home/. }}}

Il --exclude='/*/.gvfs' non permette a rsync di avvisare di non essere in grado di copiare .gvfs, ma può essere opzionale. Anche se rsync lancia un avviso, copierà comunque qualsiasi cosa.

=== Verifica della copia effettuata ===

Le informazioni in /home ora esistono in 2 posti ma è opportuno verificare che tutto sia in regola. Se sembra approssimativamente lo stesso è probabilmente tutto giusto.

=== Una manovra sorniona di sicurezza ===

Perciò ora esistono 2 copie della cartella /home. La nuova nella nuova partizione e la vecchia ancora nella stessa partizione in cui era. Il problema è ora quello di eliminare quella giusta!! Poichè al momento è ancora utilizzata la vecchia /home basta rinominarla:

{{{
cd /
sudo mv /home /old_home }}}

Ora ri-creare una nuova directory vuota /home giusto in caso vada tutto storto!

{{{
cd /
sudo mkdir -p /home/user }}}

A questo punto se le cose sono andate male il sistema si riavvia in quello che apparirà come una nuova installazione in cui tutti i dati sono stati persi. Ed invece a tutti gli effetti sono ancora disponibili le 2 copie :)

== Applicare il cambiamento ==

Ora è il momento di modificare di nuovo fstab per puntare alla nuova /home e montarla in modo adeguato. Perciò è necessario di nuovo digitare a terminale il comando:

{{{
gksu gedit /etc/fstab }}}

ed ora modicare le righe aggiunte prima per eliminare la parte /media. Ciò dovrebbe cambiare /media/home in /home come segue

{{{
# (identifier) (location, eg sda5) (format, eg ext3 or ext4) (some settings)
UUID=???????? /home ext3 nodev,nosuid 0 2 }}}

e finalmente, ri-montare la partizione con:

{{{
sudo mount -a }}}

Sembra ora tutto a posto? E' possibile riuscire ancora a raggiungere i files e le cartelle personali dal menu "Risorse"? Ri-avviare per essere sicuri che i programmi ora operativi usino la /home che è ora sulla nuova partizione.

=== Dopo il riavvio ===

Se tutto funziona come si deve, molto bene! E' possibile perciò procedere alla eliminazione della vecchia /old_home. Se le cose, invece, non dovessero andare bene, sarebbe sufficiente spostare indietro la /old_home in /home, e cancellare le righe aggiunte a fstab.

== Note tecniche e risorse ==

Rsync era stato scelto rispetto a cp e find|cpio perchè sembrava mantenere le autorizzazioni.

http://ubuntu.wordpress.com/2006/01/29/move-home-to-its-own-partition/

http://ubuntuforums.org/showthread.php?t=46866


## da questo punto in poi non modificare!

Richiesta revisione stilistica: Questo articolo non rispetta le regole stilistiche descritte nella pagina RegoleStilistiche.

Problemi in questa pagina? Segnalali in questa discussione

Separare la /home dalla root /

I vantaggi che derivano dal fatto di avere due partizioni dedicate e separate per la cartella /home e la cartella / sono, ad esempio:

  • Proteggere i dati dell'utente
  • Mantenere alta l'efficenza del sistema
  • Mantenere le impostazioni dei programmi installati in caso di una nuova installazione;
  • Mantenere sotto controllo le dimensioni e le caratteristiche delle partizioni /home e /

  • Poterle posizionare su due Hard Disk diversi per evitare che guasti Hardware possano provocare la perdita di tutti i dati.

L'obiettivo di questa guida è di, a partire da un sistema in cui / e /home convivono nella stessa partizione, ottenere un sistema in cui / e /home siano posizionate in due differenti partizioni dell'Hard Disk, senza dover reinstallare Ubuntu.

Prima di procedere, si consiglia di effettuare una copia di backup dei propri dati.

Verificare lo spazio disponibile

  • Aprire un terminale e verificare la dimensione della propria /home digitando il comando

du -kshP /home

Il comando restituirà la dimensione della cartella home, ad esempio:

1,3G    /home

La partizione che ospiterà la cartella /home dovrà essere sempre maggiore alla cartella stessa.

  • Si consiglia di dimensionare la partizione dedicata alla /home in modo che, dopo il trasferimento, restino almeno 4GB / 5GB di spazio libero. In questo modo si evita di trovarsi nelle condizioni di non poter più lavorare a causa dell'esaurimento dello spazio disponibile.

  • Verificare lo spazio libero delle proprie partizioni. Allo scopo potrebbe essere utile un programma come GParted.

Modifica delle partizioni

  • Ridimensionare la partizione che si desidera e crearne una nuova nello spazio liberato che si è creato. Questa nuova partizione ospiterà la /home.

  • Assicurarsi che la nuova partizione sia formattata con lo stesso File System della partizione dalla quale si estrarrà la /home.

Copia della /home nella nuova partizione

  • Montare la nuova partizione creata attraverso il comando

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

Sostituire a sdxx il nome della partizione.

  • Copiare la home nella nuova posizione attraverso il comando

sudo cp -av /home/nome_utente /media/home

Sostituire a nome_utente il proprio nome utente. Il processo potrebbe durare da qualche minuto a diverse ore, a seconda della quantità di dati da trasferire e della potenza del computer.

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

    df -h /home
    df -h /media/home
  • Attribuire i permessi alla nuova cartella attraverso il comando

    sudo chown $(id -u) /media/home/nome_utente

UUID della partizione

  • Ricavare il nome della partizione in cui è stata copiata la /home con il comando

df -h /media/home

Il comando restituirà un output del tipo

File system            Dim. Usati Disp. Uso% Montato su
/dev/sda8             6,3G  1,4G  4,6G  24% /media/home
  • Ricavare l'UUID della partizione con il comando

sudo blkid /dev/sda8

Sostituire a /dev/sda8 il nome della propria partizione. Il comando restituirà un output del tipo

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

41800cf0-acb6-4845-b05e-479e9258f25f

Modificare il file /etc/fstab

  • Creare una copia di backup del file

sudo cp /etc/fstab /etc/fstab.backup

UUID=xxx /home ext4 relatime 0 2

Inserire al posto di xxx l'UUID ottenuto al passo precedente.

  • Verificare la correttezza degli UUID delle altre partizioni del sistema digitando, in una finestra di terminale, il comando

sudo blkid

e confrontando i valori con quelli presenti nel file /etc/fstab.

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

Errori

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

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

Per ovviare al problema premere il tasto M sulla tastiera; comparirà quindi una shell di ripristino. A questo punto:

  • Dare il comando

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

per ripristinare il file /etc/fstab originale

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

Eliminazione della vecchia /home

A questo punto, se la procedura ha avuto esito positivo, si può eliminare la vecchia /home. Per fare ciò è necessario operare da LiveCD eliminando la cartella /home contenuta nella partizione di sistema (/).

Riferimenti


CategoryNuoviDocumenti