Vai al contenuto

Separare la /home da / – Ubuntu

6 marzo 2010

Su richiesta di patel 🙂 e con il supporto del topic seguito da Muflone su LQH riporto una breve guida per separare la /home dalla radice (/) integrata da alcune esperienze personali.

La procedura è valida sia in caso si voglia procedere su un’installazione già “operativa” sia che si voglia procedere alla separazione in fase di nuova installazione.

Riassumiamo brevente i vantaggi di avere una partizione dedicata per la nostra /home

  • possibilità di preservare i nostri dati da eventuali malfunzionamenti del sistema
  • possibilità di mantenere le impostazioni dei programmi installati in caso di necessità di nuova installazione/avanzamento di versione
  • possibilità di tenere maggiormente sotto controllo le dimensioni delle due “entità” (/home e /)

C’è da specificare che la /home separata contiene le configurazioni dei programmi installati ma che, in caso di installazione/avanzamento di versione gli stessi andranno prima reinstallati, e poi ce li troveremo già configurati.

Diverse le scuole di pensiero riguardo i vantaggi/svantaggi del procedere in tal senso; alcuni si trovano bene creando un’unica partizione io personalmente preferisco separarle.

Vediamo le due diverse procedure:

Sistema installato su unica partizione (oltre swap)

Creare lo spazio adatto per ospitare la nostra nuova /home; se si hanno a disposizione altre partizioni montate in /media/dati, /media/musica o altro sono sufficienti pochi GB e possiamo spostare i dati, le foto e la musica o quant’altro sulle altre partizioni, altrimenti bisogna regolarsi in base alla quantità di dati che abbiamo già nella vecchia /home

strumento ideale per procedere tramite interfaccia grafica è gparted; se non lo abbiamo già installato

sudo apt-get install gparted

è preferibile formattare la partizione con lo stesso tipo di filesystem della / (ext3 o ext4).

Montiamo temporaneamente la partizione in /media

sudo mount /media/home

poi procediamo con la copia della vecchia /home nella sua nuova “casa”

sudo cp -av /home/nomeutente /media/home

sostituendo, ovviamente, a nomeutente il nome dell’utente in uso.

Lasciamo terminare il processo di copia, poi attribuiamo i relativi permessi con

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

Attenzione: non toccare ancora la vecchia /home; verifichiamo prima che tutto vada a posto per poi procedere con il liberare lo spazio.

Fatto questo dobbiamo inserire l ‘UUID corretto della partizione in fstab per fare in modo che la /home venga montata automaticamente ad ogni avvio

Verifichimo prima qual’è la nostra partizione (sda1, sda2 o sdb1, sdb2 ecc) con

df -h /media/home

poi identifichiamone l’UUID con

sudo blkid /dev/sdaX

sostituendo a X il numero corretto; ci esce una riga tipo questa:

/dev/sdaX: UUID="82f73517-ce1f-433c-b761-5f0b7e64c3b2" TYPE="ext4"

prendiamo nota del codice alfanumerico (nell’esempio 82f73517-ce1f-433c-b761-5f0b7e64c3b2) o, ancora meglio, facciamo un tasto destro → copia

poi apriamo il nostro fstab con

sudo gedit /etc/fstab

e andiamo ad inserire la seguente riga:

UUID=82f73517-ce1f-433c-b761-5f0b7e64c3b2 /home ext4 relatime 0 2

Attenzione: se si è ricavato lo spazio per la nuova /home ridimensionando o spostando  altre partizioni già presenti è conveniente ricontrollare gli UUID delle stesse tramite il comando:

sudo blkid

e verificando la corrispondenza del dato riportato in fstab.

In particolare, se si è operato sulla swap considerate anche l’eventualità che si presentino altri problemini risolvibili come riportato qui .

smontiamo la partizione dal punto di mount /media

sudo umount /media/home

e montiamo la /home con

sudo mount /home

al riavvio dovremmo trovare la nuova /home perfettamente funzionante e con tutti i nostri dati; in questo caso possiamo procedere alla rimozione della vecchia /home presente all’interno della partizione di /

L’operazione di eliminazione va fatta da CD Live montando la partizione di / e prestando attenzione a non cancellare nulla al di fuori della /home; l’operazione non può essere fatta direttamente dalla installazione di Ubuntu perchè il sistema punta direttamente alla “nuova” /home.

Nuova installazione e contestuale separazione della /home

La procedura è simile.

Possiamo creare la partizione per la /home con la procedura appena descritta e selezionare di non formattare la /home in fase di installazione avendo, però, l’accortezza di indicare il punto di mount.

Oppure copiare la /home su supporto esterno e poi sovrascrivere la partizione /home appena creata dalla nuova installazione con i dati che abbiamo salvato sul supporto esterno.

per ogni dubbio:

34 commenti leave one →
  1. Avatar di Muflone
    6 marzo 2010 9:54 PM

    copione 😀

    una nota, ti conviene rimuovere l’ultimo paragrafo:

    in questo caso possiamo procedere alla rimozione della vecchia /home presente all’interno della partizione di /

    oppure spiegare come si eliminano i dati dalla directory /home non montata, un inesperto puo` fare enormi danni.

  2. Avatar di perfab
    6 marzo 2010 10:05 PM

    giusto… grazie Muflo

  3. Avatar di patel
    patel permalink
    7 marzo 2010 7:03 am

    ho sempre avuto il dubbio se copiare la home con cp dovesse essere fatto da cdlive oppure direttamente dall distro attiva, mi confermi che non è necessario cambiare ambiente ?

    • Avatar di perfab
      7 marzo 2010 2:56 PM

      @patel (1): personalmente sempre fatto e mai avuto problemi; c’è anche chi consiglia di dare uno stop a gdm prima ma anche questo passaggio io non l’ho mai fatto.

  4. Avatar di hgd
    hgd permalink
    7 marzo 2010 7:15 am

    Una strada alternativa per eliminare la /home:
    -riavviato a runlevel 1 (modalità single user)
    -da shell di root avrei smontare /home
    umount /home
    -avrei rimosso la vecchia home
    rm -rf /home
    -quindi avrei riavviato il sistema.
    mi sembra semplice, no?

    • Avatar di perfab
      7 marzo 2010 2:57 PM

      hdg tu mi insegni che di strade alternative ce ne sono molte; ho cercato di fare riferimento alla più “vicina” all’utente che si avvicina per la prima volta a questa problematica.

  5. Avatar di patel
    patel permalink
    7 marzo 2010 7:34 am

    forse hai dimenticato di inserire la partizione da montare in
    sudo mount /media/home
    dovrebbe essere
    sudo mount /dev/sdaN /media/home

    • Avatar di perfab
      7 marzo 2010 3:01 PM

      patel(2) per non dilungarmi troppo ho dato per scontato che con “montiamo la partizione in media” si sappia cosa significa… alrimenti sarei dovuto partire dallo spiegare sudo e i privilegi di superutente… 🙂

      • Avatar di patel
        patel permalink
        8 marzo 2010 12:01 PM

        la guida è tua, comunque grazie, è molto semplice e lineare al contrario di quello che si trova in giro.

      • Avatar di perfab
        8 marzo 2010 5:47 PM

        patel, mi farebbe piacere considerare questi consigli come “nostri”; se hai qualche miglioria da apportare dimmelo che la inserisco molto volentieri
        sinceramente.

      • Avatar di patel
        patel permalink
        9 marzo 2010 8:54 am

        il consiglio lo hai già rifiutato prima,
        la guida dice:
        Montiamo temporaneamente la partizione in /media
        sudo mount /media/home
        io scriverei:
        Montiamo temporaneamente la partizione sdaN in /media
        sudo mount /dev/sdaN /media/home

  6. Avatar di sgnablo
    sgnablo permalink
    7 marzo 2010 6:17 PM

    volevo segnalare che io per copiare i dati della vecchia home ho usato tempo fa ( con intrepid) questo comando

    sudo cp -dpr /home/nomeutente /media/home

    che mantiene automaticamente i permessi originali, evitando un passaggio (sudo chown ecc..)

    in particolare chi fa il lavoro sporco è il parametro -p

    • Avatar di perfab
      7 marzo 2010 6:25 PM

      giusto sgnablo; anche il parametro -a

      -a, –archive
      same as -dR –preserve=all

      non necessita di riattribuire i permessi; ho inserito il comando perchè a me in un paio di occasioni qualcosa è andato storto e non mi ritrovavo tutti i permessi (forse perchè ero passato su un supporto esterno in quell’occasione) 😉

      • Avatar di sgnablo
        sgnablo permalink
        7 marzo 2010 6:28 PM

        ah ok, non ho avuto la curiosità necessaria a controllare cosa faceva -a, immaginavo fosse solo riferito alla copia del file, non ai permessi 😀

        vado a sotterrarmi, scusate.. 😛

      • Avatar di perfab
        7 marzo 2010 6:34 PM

        vado a sotterrarmi, scusate..

        ahahahah… che vuoi che sia… 😉

  7. Avatar di tom
    tom permalink
    19 aprile 2010 9:31 PM

    ma scusate… io ho già la home separata sulla beta 2 di lucid linx: in caso dovessi reinstallare, mi spiegate, in modo semplice, come faccio a mantenere la mia vecchia home nel nuovo sistema operativo

  8. Avatar di cohan
    13 ottobre 2010 9:18 am

    grazie mille… utilissimo!

  9. Avatar di andrea
    andrea permalink
    5 giugno 2011 5:33 PM

    Molto utile questa quida.
    una domanda una volta copiato la vecchia Home al posto di quella appenda creata con l’installazione:
    le varie impostazioni( tipo i parametri di connessione di Evolution) si applicano automaticamnete ?

    ciao

    • Avatar di perfab
      6 giugno 2011 1:40 PM

      parlando di Evolution i parametri si, per tutto il resto conviene fare un backup delle impostazioni e il relativo ripristino. per gli altri programmi ovviamente è necessario procedere alla loro installazione per trovarli configurati.

  10. Avatar di rai
    rai permalink
    21 agosto 2011 10:36 PM

    [quote]
    sudo apt-get install gparted
    [/quote]
    forse questo passaggio non serve a chi ha un’unica partizione: deve comunque averla smontata e quindi gli serve il CDlive per partizionare 😉

    qui consiglia di usare rsync: https://help.ubuntu.com/community/Partitioning/Home/Moving
    Tu dici che è meglio cp?

    Ciao e grazie per questa utile guida

    • Avatar di perfab
      22 agosto 2011 11:04 am

      Ognuno usa il metodo che più gli aggrada (ce ne sono millemila 🙂 )
      grazie per i complimenti

  11. Avatar di cristian
    cristian permalink
    13 marzo 2013 5:44 PM

    utilizzo ubuntu 10.04 e volevo creare nuova home per installare la 12.04 ,va bene eseguire cio che avete scritto ?

    • Avatar di perfab
      13 marzo 2013 8:28 PM

      Sì, a questo punto ti conviene fare la separazione della /home e l’installazione da zero indicando i punti di mount.
      Ciao

      • Avatar di Cristian
        Cristian permalink
        13 marzo 2013 8:34 PM

        Utilizzo un eeepc Asus senza lettore cd. Avete dei link che, spiegano in modo molto dettagliato? Sarebbe la prima volta che installo.
        Grazie

  12. Avatar di perfab
  13. Avatar di marcof
    marcof permalink
    6 aprile 2013 8:07 am

    perfetta (su 12.04 con ridimensionamento delle partizioni dopo istallazione)

  14. Avatar di Shamal (@shamal64)
    17 settembre 2017 11:05 am

    Scusate mi riconnetto a questo utile tutorial, vorrei se possibile un chiarimento per la mia situazione che è simile, prima di procedere. Uso Linux da molto ma non sono espertissimo econ le partizioni ho sempre qualche problemino.
    In breve:
    – ho reinstallato Ubuntu Gnome 16.04 al posto di un Ubuntu Mate upgradato a 16.04. Avevo la home separata su altro disco interno (è un desktop), volevo fare il solito partizionamento manuale ma durante l’installazione mi dava dei problemi con la reinstallazione di GRUB, e la installazione non andava a buon fine.
    – Alla fine ho lasciato fare partizionamento all’installer e tutto è andato a buon fine, ma ovviamente ora ho una nuova /home (vuota) su dev/sda1 che è il disco SSD con sistema operativo, boot e swap. La (vecchia) home è su /dev/sdb1 (disco esterno), montata su /media/paolo/5d483f75-4e7e-430d-8979-318cc41cd910. Entrambe formattate ext4.
    – vorrei semplicemente ripristinare questa partizione come /home, in realtà non devo copiare nulla perché i dati sono già lì, devo solo farla riconoscere al sistema come nuova /home ed eliminare la attuale su /sda1.
    Qual’è il metodo più semplice? posso farlo da dentro il sistema o devo farlo da live?
    Vi ringrazio infinitamente, anche delle eventuali indicazioni “complete” da terminale, sono un po’ tonto a volte e per esempio la precisazione di Patel relativa a “sudo mount /dev/sdaN /media/home” per me è utilissima, per intenderci. Grazie ancora dell’aiuto

    • Avatar di perfab
      19 settembre 2017 9:06 am

      Ciao e grazie per la visita, come avrai notato il blog non è aggiornato da molto tempo, così come me, ti consiglio di richiedere assistenza sul forum ufficiale. Grazie

Trackbacks

  1. How To: Creare una partizione /home separata con Ubuntu | Scrivi, interagisci, coinvolgi: ValmaBlog, Il tuo primo magazine in Valmarecchia

Lascia un commento

Progetta un sito come questo con WordPress.com
Comincia ora