Come ridurre la dimensione di un volume logico con LVM

Questo “articolo” è più un promemoria personale: ogni tot mesi devo eseguire l’operazione del titolo e puntualmente non mi ricordo di preciso le operazioni da fare (visto che lo devo fare su volumi in produzione preferisco essere sicuro di quello che faccio).

Per non dover ogni volta “googlare“, come ho appena fatto, ho deciso di scrivere qui  i passi per averne imperitura memoria (e poi magari a qualcuno serve).

AVVERTENZA: ovviamente non mi assumo nessuna responsabilità sull’esito delle operazioni e ricordo che FARE PRIMA IL BACKUP è sempre cosa buona e giusta¹.

Detto questo, un po’ di teoria: per poter ridurre una partizione già formattata (nel mio caso utilizzero come esempio una partizione ext3) bisogna ricordarsi di ridurre prima la partizione di una dimensione minore di quella finale, poi ridurre il volume LVM e poi ingrandire per utilizzare tutto lo spazio. Queste operazioni, anche se sembrano bizantine, sono necessarie perché i filesystem occupano diversi inode (leggasi spazio disco) per contentere informazioni di struttura, directory e journaling che è difficile quantificatere a colpo d’occhio. Quindi è meglio stare un po’ larghi.

Veniamo ora alla procedura. Il primo passo è semplice e banale:

umount /dev/mapper/vol_group-vol_name

Ebbene si, bisogna smontare la partizione! 😛

Il secondo passo è invece (richiesto nel caso della ext3, per altri filesystem non saprei) quello di fare un controllo della struttura:

e2fsck -f /dev/mapper/vol_group-vol_name

Adesso siamo pronti per fare il grosso del lavoro: spostare i dati e aggiornare la struttura. Supponiamo che il nostro volume sia da 1Tb, sia occupato per circa 450GB e vogliamo ridurlo alla fine a 500GB. Conviene ridurre la dimensione a 475GB per poi espanderla. Quindi scriviamo:

resize2fs /dev/mapper/vol_group-vol_name 475G

Alla fine dell’operazione tutti i dati sono spostati e possiamo ridurre il volume logico:

lvreduce -L 500G /dev/mapper/vol_group-vol_name

LVM dà a disposizione altri comandi (lvresize e lvextend) ma da quello che ho capito fanno tutti la stessa cosa, almeno per lo scopo di questo articolo. Cambia solo la sintassi.

Manca l’ultima operazione: ingrandire la partizione per utilizzare tutto lo spazio:

resize2fs /dev/mapper/vol_group-vol_name

FINE! Con queste semplici operazioni avrete ridotto la dimensione del volume logico!

Eventuali osservazioni o segnalazioni di errori sono benvenute. Sopratutto se avete un metodo più semplice, per favore condividetelo!

CDF

¹ nel mio caso non sempre è possibile: fate voi il backup in modo agevole di 2TB di dati che fra una settimana non serviranno più …

Annunci

3 Risposte

  1. Ben fatta, prossimamente dovrò mettere insieme un piccolo fileserver RAID-1 (software) + LVM. Preparerò un post pre-configurazione, da esporre al pubblico ludibrio per evitare di combinare troppe cazzate! 🙂

  2. Avevo preparato un RAID-1 (sw) + LVM per un server in produzione un anno fa, alla fine non è niente di sconvolgente ma poi ho scordato tutto (mannaggia alla mia propensione per non creare documentazione). Quindi ben venga il tuo tutorial! 🙂

    Forse è interessante anche una riflessione comparativa fra RAID1+LVM versus LVM+RAID1. A naso quest’ultima ha sicuramente degli svantaggi ma è lunedì mattina … la butto lì … 😀

  3. […] Recenti CDF su Come ridurre la dimensione di …Matteo su Come ridurre la dimensione di …CDF su E alla fine arriva l…Scugnizzo su […]

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger hanno fatto clic su Mi Piace per questo: