Come aggiungere spazio disco ad una partizione ospitata su un logical volume (di tipo LVM).
Supponiamo di aver allargato il disco mediante il tool offerto dalla piattaforma di virtualizzazione (Xen, Vmware, Hyper-V,...).
Il disco con il nuovo spazio potrebbe essere riconosciuto automaticamente e istantaneamente.
Tuttavia in alcuni casi è bene forzare il riconoscimento perchè non sempre la modifica viene recepita in automatico (es. VMware Esxi 5.5 o precedenti).
Queste istruzioni sono valide solo per dischi con dimensioni inferiori ai 2 TB per cui si utilizza MBR come tipologia di tabella delle partizioni.
Individuiamo la partizione da estendere, il logical volume e il volume group associato.
Si può usare il comando lsblk, per esempio. Nel nostro esempio supponiamo che il volume group si chiami vg_db e il logical volume lv_db.
Individuiamo il disco che è stato ampliato. Es. supponiamo che sia /dev/sdc.
Ora dobbiamo risalire allo scsi ID associato al disco, lanciando il comando:
cat /proc/scsi/scsi | grep sdc
Se il sistema è vecchio si può usare il comando:
lsscsi -v
che restituirà qualcosa tipo:
[0:0:2:0] disk ATA ST3500418AS CC38 /dev/sdc
ora lanciamo il comando di rescan del disposivo:
echo 1 > /sys/class/scsi_device/0\:0\:2\:0/device/rescan
dove la parte in neretto è formata dai numeri ottenuti col comando scsi di prima.
A questo punto nel log di dmesg troveremo che le dimensioni del disco sdc sono cambiate.
Si può ora usare fdisk per creare una partizione da etichettare come LVM (8e).
fdisk /dev/sdc
Si crei una nuova partizione primaria (ce ne possono essere al massimo 4!!!!).
Etichettare la nuova partizione come LVM (8e), salvare le modifiche e uscire da fdisk.
Usciti da fdisk, lanciare il comando:
partprobe
Ora supponiamo che la nuova partizione si chiami sdc3
Si può creare un nuovo physical volume (PV) sulla nuova partizione:
pvcreate /dev/sdc3
Estendiamo il volume group vg_db con il nuovo PV.
vgextend vg_db /dev/sdc3
Ora ampliamo il logical volume in modo che utilizzi tutto lo spazio aggiuntivo.
lvextend -l +100%FREE /dev/vg_db/lv_db
Ora è possibile estendere il filesystem. Se è supportato dal filesystem, tale operazione può essere fatta anche on-line, ossia con il filesystem montato.
resize2fs /dev/vg_db/lv_db
Riferimento: http://www.lxos.it/logical-volume-manager_p5.html