HOWTO – Linux: Spostare cartelle di sistema

Da precisare che io ho sempre eseguito le installazioni Linux (poco importa la distribuzione da torturare in quel momento) separando la “/home” da quella “/”, ultimamente ho pure optato per una partizione “/boot” ed una “/media/dati”, quest’ultima mi dava la possibilità di limare quanto volevo il sistema senza dovermi preoccupare per i miei dati, tutti i backup della “/home” vanno li in automatico, e poi trasferiti sul server (quando mi ricordo …), ne avevo però una in più da 10 Gb, questa era dedicata agli esperimenti prima della scoperta di VirtualBox, ed è quella che ho “sacrificato”, ma veniamo al dunque.

Recentemente ho avuto un pò di problemi di spazio, non era esaurito, ma quando vedo che ho “solo” 1,5 Gb di disponibile sulla partizione “root” comincio a preoccuparmi, su Linux installo “pesante”, non lo nego e non me ne vergogno nel farlo, funziona a meraviglia ugualmente, quindi dovevo trovare una soluzione, il portatile (quello in firma) ha un HD da 80 Gb, le partizioni create sul disco erano le seguenti:

“/boot” = 300 Mb ## qui viene solo il Kernel e i file di avvio, basta anche meno..
“/” = 7 Gb ## tutto il sistema (pensavo bastasse..)
“/home” = 5 Gb ## avendo una partizione “dati” ci trasferisco sopra tutto l’inutile o poco usato.
“/swap” = 1.6 Gb ## ho 2 Gb di ram, ma quella partizione è stata creata al tempo in qui ne avevo solo 512, per ora non la modifico, riesco a sospendere ed ibernare ugualmente senza errori
“/esperimenti” = 10 Gb ## il nome dice a cosa serviva..
“/dati” = tutto il restante (un 53 Gb) ## c’è di tutto sopra.

Ad un certo punto, come detto sopra, vedo che la partizione di sistema comincia a essere piuttosto piena, controllo le varie cartelle, “/tmp” Kubuntu la tiene abbastanza in ordine, poca roba dentro, /var/tmp invece mi fà un pò impallidire, 1,4 Gb, vedo in rete se posso svuotarla ma mi pare troppo rischioso, ci sono i temi del mio amato KDE 4.2 e non vorrei trucidarlo, passo allora alla /usr, svengo, 3.6 Gb!!, ok, allora è deciso, devo agire su di lei..

NB1: La partizione in questione, sul mio, è “sda4”, la inserisco come “sdaX” onde evitare il “copia/incolla” senza usare i neuroni che potrebbe causare più danni che benefici

NB2: Prima di qualsiasi manovra fate un backup dei Vostri dati (posta e quant’altro sul vostro disco), non mi assumo responsabilità su un eventuale problema, importantissimo avere una Live già masterizzata, io uso e stra uso Knoppix, è l’unica “vera” Live che ho incontrato e che mi da fiducia (ma non sono un esperto :P), con lei dovremo fare manovre sul disco di sistema, impossibili da eseguire se il sistema è avviato.

Avviate una prima volta il PC con la Live e verificate di poter accedere correttamente all’HD, provate a creare un file in una cartella qualsiasi (/usr, ad esempio) e chiamatelo “test.txt”, se ci riuscite è ok, potete proseguire.

Passiamo ai fatti, decido di usare la partizione “esperimenti” (10 Gb) per “/usr”, quindi sposto su quella “/dati” i suoi file, ora bisogna “smontarla”, basta eliminare la stringa che la citava in causa in “fstab” e salvare, ora da terminale date:

sudo mount -a

una volta eseguito la formatto “ext3” (tutto da terminale, è più facile ):

sudo mkfs.ext3 /dev/sdaX

ora gli dò un nome (potete usarne uno a piacere, non è rilevante):

sudo e2label /dev/sdaX /usr1

quindi ora si chiamerà “/usr1”, ora bisogna “montare” questa partizione per poter fare una copia esatta della cartella “/usr” esistente, è importantissimo mantenere i permessi dei file che essa contiene, e quindi questo è un passaggio abbastanza delicato, se avete bevuto o fumato robe strane aspettate che vi passi prima di procedere :P, creiamo una cartella “di comodo” (/usr1) per montarla:

sudo mkdir /usr1

quindi montiamo la partizione “dentro” di lei:

sudo mount /dev/sdaX /usr1

quindi, ora, /usr1 è in realtà la partizione preparata appositamente, bene, copiamo tutta la cartella /usr originale al suo interno, occhio al comando (mi son scervellato una giornata cercando in rete per non far disastri ):

cd /usr ##(entriamo nella cartella /usr originale)
sudo find . -depth -print0 | sudo cpio –null –sparse -pvd /usr1

Il comando sopra citato deve essere tale quale, le approssimazioni qui non esistono, sia chiaro! Ora andatevi a prendere un caffè, se era popolata come la mia ci mette un pò, terminata questa fase dobbiamo dire al sistema che cominci ad usare tale partizione, deve in oltre capire che quella è la cartella /usr, quindi editiamo il nostro bravo “fstab”:

#kde# sudo kate /etc/fstab

oppure

#gnome# sudo gedit /etc/fstab

nel mio caso era cosi:

19:25:05 yvesyves-laptop ~ $ cat /etc/fstab
# /etc/fstab: static file system information.
#
#
proc /proc proc defaults 0 0
# /dev/sda2
UUID=f3327682-b55f-4112-bff7-a09560a3b837 / xfs relatime 0 1
# /dev/sda1
UUID=70c8511a-b165-49a9-a798-6084a7685a86 /boot ext3 relatime 0 2
# /dev/sda5
UUID=81679187-5f27-41ca-a637-1a16b630138b /home xfs relatime 0 2
# /dev/sda7
UUID=fe42afad-9d40-4410-9de3-1203cb58c5b0 none swap sw 0 0
## /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0
##sda6
UUID=179766a1-f996-4217-a5b1-9cb02959828f /media/dati reiserfs defaults,user,rw,exec 0 0

##Montare /tmp nella Ram, max 500 Mb
##none /tmp tmpfs size=500m,mode=1777 0 0

la partizione “/esperimenti” già l’avevo eliminata, ora aggiungo quella “/usr”:

19:25:05 yvesyves-laptop ~ $ cat /etc/fstab
# /etc/fstab: static file system information.
#
#
proc /proc proc defaults 0 0
# /dev/sda2
UUID=f3327682-b55f-4112-bff7-a09560a3b837 / xfs relatime 0 1
# /dev/sda1
UUID=70c8511a-b165-49a9-a798-6084a7685a86 /boot ext3 relatime 0 2
/dev/sda4 /usr ext3 relatime 0 2
# /dev/sda5
UUID=81679187-5f27-41ca-a637-1a16b630138b /home xfs relatime 0 2
# /dev/sda7
UUID=fe42afad-9d40-4410-9de3-1203cb58c5b0 none swap sw 0 0
## /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0
##sda6
UUID=179766a1-f996-4217-a5b1-9cb02959828f /media/dati reiserfs defaults,user,rw,exec 0 0

##Montare /tmp nella Ram, max 500 Mb
##none /tmp tmpfs size=500m,mode=1777 0 0

Ok, ora bisogna inserire il CD di Knoppix e riavviare il sistema da Live, non è complicato, digitate “knoppix lang=it” al boot e date invio, una volta avviata avrete le vostre belle partizioni sul desktop, normalmente ci sono, quindi individuate quella di “/” e montatela (doppio click sopra), click DX su di lei ed “abilitare lettura/scrittura”, ora basta entrare all’interno e “rinominare” la cartella “/usr” in “/usr-BAK” NON CANCELLATELA ORA!! se qualcosa non va si potrà tornare indietro, quindi creare una nuova “/usr”, i comandi, in linea di massima, per eseguire queste operazioni sono i seguenti:
Rinominare la cartella:

su
cd /media/sdaX
mv /usr /usr_bak

creare la nuova:

mkdir /usr

Fatto, avendo già inserito il punto di mount in fstab al prossimo riavvio deve cominciare ad usare la “nuova” /usr, controllate di non avere errori quando avviate i programmi, se dopo un periodo di prova vedete che tutto è ok potete eliminare la vecchia (che ora è /usr_bak), la cartella “di comodo” /usr1 potete eliminarla subito, è vuota.

Se non avete controllato i punti in rosso NB1 e NB2 e vi si è incartato il sistema leggeteli ora e riflettete sulla cosa

Questa procedura è applicabile ad altre cartelle, ad esempio se avete la “/home” nella partizione di sistema e la volete spostare su un altro HD o partizione è la stessa procedura, basterà modificare i parametri della guida per adeguarla alle nostre esigenze.

Sul mio ha funzionato alla grande, non vedo perchè non dovrebbe funzionare con voi, in oltre questo mi conferma che con Linux (quasi) nulla è impossibile, basta solo scoprire come eseguire la cosa senza errori

Taggato su:
Loading Facebook Comments ...

Lascia un commento