Estendere partizione LVM su un VPS
Per chi avesse mai acquistato un server virtuale presso un qualsiasi servizio cloud: Aruba, Register o simili; una volta configurata per la prima volta la propria macchina dopo aver scelto i tagli di memoria, la tipologia di processore e lo spazio di archiviazione può nascere l’esigenza di modificare uno di questi parametri per un qualsiasi motivo. Modificare potenza di calcolo e tagli di memoria è un’operazione abbastanza banale in quanto ci basterà recarci sul nostro pannello di amministrazione del servizio e semplicemente aggiungere più RAM o più cores alla nostra macchina e i cambiamenti saranno subito applicati dopo un riavvio. Per quanto riguarda invece lo spazio di archiviazione il discorso è differente in quanto si, si può aggiungere più “spazio” di memoria semplicemente acquistandolo dal nostro pannello clienti, ma questo non sarà automaticamente disponibile in quanto non automaticamente allocato.
In questo breve articolo vediamo dunque come estendere la partizione primaria del nostro vps con l’eventuale “free space” acquistato.
ATTENZIONE: prima di effettuare qualsiasi operazione di ridimensionamento o partizionamento è fondamentale eseguire un backup di tutti i dati presenti sulla macchina onde evitare di perdere tutto nel caso di errori! Se leggendo questa guida non sei sicuro di quello che stai facendo contatta il tuo fornitore di servizi che ti fornirà supporto tecnico (a pagamento).
Passo 1: creazione di un nuova partizione con lo spazio non allocato
Colleghiamoci tramite ssh alla nostra macchina e utilizzando cfdisk andiamo a creare una nuova partizione: questa dovrà essere di tipo Logico e avere il formato 8E. Possiamo fare tutto ciò digitando cfdisk sulla riga di comando e utilizzare le frecce direzionali per selezionare lo spazio allocato, cliccare su new, impostare tipologia e formato e poi fare click su write per salvare le modifiche.
Passo 2: creare un volume fisico per la partizione creata
Una volta creata la partizione ad essa sarà assegnato un riferimento (es: /dev/sda6), dobbiamo a questo punto creare un volume fisico per questa partizione e per farlo ci basterà fare da riga di comando:
pvcreate /dev/sda6
*in caso di errori, nel caso in cui ad esempio il sistema indichi che la partizione /dev/sda6 (nel nostro caso) fosse non pronta o non trovata ci basterà riavviare la macchina virtuale e ripetere la creazione del volume fisico.
Una volta fatto ciò andiamo a controllare i volumi fisici, diamo quindi il comando
pvdisplay
che ci restituisce un qualcosa di simile:
E’ fondamentale ricordare il vg name dell volume appena creato per la nostra partizione
Passo 3: estendere il volume appena creato
Possiamo farlo ricordandoci il vg name e dando il comando
vgextend vg /dev/sda6
Passo 4: controllare il volume logico da espandere
Il volume logico da espandere non è altro che la partizione virtuale alla quale vogliamo aggiungere il nostro “free space” che in questo momento della guida corrisponde al volume /dev/sda6 precedentemente creato.
Per far ciò in primo luogo dobbiamo capire il nome della partizione logica da espandere, digitiamo quindi
lvdisplay
che ci restituirà qualcosa del genere
una volta compreso il nome del volume da espandere da terminale possiamo dare il comando
lvextend -l+100%FREE /dev/vg/lv_root
che espanderà il nostro volume logico, ed infine per espandere il file system e rendere disponibile lo spazio non allocato diamo il comando
resize2fs /dev/mapper/vg-lv_root
Una volta fatto ciò il nostro disco primario risulterà aumentato dello spazio specificato al momento della creazione della partizione /dav/sda6
Passo 5: controllare che tutto si andato come dovrebbe
Per controllare l’effettiva applicazione delle modifiche basterà dare il comando
df -h
Una volta fatto ciò non sarà inoltre necessario riavviare la nostra vps. I cambiamenti saranno immediati.
😀