LVM Guide · 6 min read · Oct 08, 2025

Guida per principianti a LVM - Pagina 7

Dopo prepariamo /dev/md0 e /dev/md1 per LVM:

pvcreate /dev/md0 /dev/md1
server1:~# pvcreate /dev/md0 /dev/md1  
  Volume fisico "/dev/md0" creato con successo  
  Volume fisico "/dev/md1" creato con successo

ed estendiamo il nostro gruppo di volumi fileserver:

vgextend fileserver /dev/md0 /dev/md1
server1:~# vgextend fileserver /dev/md0 /dev/md1  
  Gruppo di volumi "fileserver" esteso con successo

Le uscite di

pvdisplay

e

vgdisplay

dovrebbero apparire così:

server1:~# pvdisplay  
  --- Volume fisico ---  
  Nome PV               /dev/sdb1  
  Nome VG               fileserver  
  Dimensione PV         23.29 GB / non utilizzabile 0  
  Allocabile            sì (ma pieno)  
  Dimensione PE (KByte) 4096  
  PE Totali            5961  
  PE Liberi            0  
  PE Allocati          5961  
  UUID PV              USDJyG-VDM2-r406-OjQo-h3eb-c9Mp-4nvnvu  
   
  --- Volume fisico ---  
  Nome PV               /dev/sdd1  
  Nome VG               fileserver  
  Dimensione PV         23.29 GB / non utilizzabile 0  
  Allocabile            sì  
  Dimensione PE (KByte) 4096  
  PE Totali            5961  
  PE Liberi            146  
  PE Allocati          5815  
  UUID PV              qdEB5d-389d-O5UA-Kbwv-mn1y-74FY-4zublN  
   
  --- Volume fisico ---  
  Nome PV               /dev/md0  
  Nome VG               fileserver  
  Dimensione PV         23.29 GB / non utilizzabile 0  
  Allocabile            sì  
  Dimensione PE (KByte) 4096  
  PE Totali            5961  
  PE Liberi            5961  
  PE Allocati          0  
  UUID PV              7JHUXF-1R2p-OjbJ-X1OT-uaeg-gWRx-H6zx3P  
   
  --- Volume fisico ---  
  Nome PV               /dev/md1  
  Nome VG               fileserver  
  Dimensione PV         23.29 GB / non utilizzabile 0  
  Allocabile            sì  
  Dimensione PE (KByte) 4096  
  PE Totali            5961  
  PE Liberi            5961  
  PE Allocati          0  
  UUID PV              pwQ5AJ-RwVK-EebA-0Z13-d27d-2IdP-HqT5RW
server1:~# vgdisplay  
  --- Gruppo di volumi ---  
  Nome VG               fileserver  
  ID di sistema  
  Formato               lvm2  
  Aree di metadati     4  
  Numero di sequenza metadati 14  
  Accesso VG            lettura/scrittura  
  Stato VG              ridimensionabile  
  MAX LV                0  
  Cur LV                3  
  Open LV               3  
  Max PV                0  
  Cur PV                4  
  Act PV                4  
  Dimensione VG         93.14 GB  
  Dimensione PE         4.00 MB  
  PE Totali            23844  
  PE Allocati / Dimensione 11776 / 46.00 GB  
  PE Liberi / Dimensione 12068 / 47.14 GB  
  UUID VG              dQDEHT-kNHf-UjRm-rmJ3-OUYx-9G1t-aVskI1

Ora spostiamo il contenuto di /dev/sdb1 su /dev/md0 e il contenuto di /dev/sdd1 su /dev/md1, poi rimuoviamo /dev/sdb1 e /dev/sdd1 da LVM:

pvmove /dev/sdb1 /dev/md0
pvmove /dev/sdd1 /dev/md1
vgreduce fileserver /dev/sdb1 /dev/sdd1  
 pvremove /dev/sdb1 /dev/sdd1

Ora dovrebbero rimanere solo /dev/md0 e /dev/md1 come volumi fisici:

pvdisplay
server1:~# pvdisplay  
  --- Volume fisico ---  
  Nome PV               /dev/md0  
  Nome VG               fileserver  
  Dimensione PV         23.29 GB / non utilizzabile 0  
  Allocabile            sì (ma pieno)  
  Dimensione PE (KByte) 4096  
  PE Totali            5961  
  PE Liberi            0  
  PE Allocati          5961  
  UUID PV              7JHUXF-1R2p-OjbJ-X1OT-uaeg-gWRx-H6zx3P  
   
  --- Volume fisico ---  
  Nome PV               /dev/md1  
  Nome VG               fileserver  
  Dimensione PV         23.29 GB / non utilizzabile 0  
  Allocabile            sì  
  Dimensione PE (KByte) 4096  
  PE Totali            5961  
  PE Liberi            146  
  PE Allocati          5815  
  UUID PV              pwQ5AJ-RwVK-EebA-0Z13-d27d-2IdP-HqT5RW

Ora formattiamo /dev/sdb1 con fd (Linux RAID autodetect):

fdisk /dev/sdb

server1:~# fdisk /dev/sdb
Il numero di cilindri per questo disco è impostato su 32635.
Non c’è nulla di sbagliato in questo, ma è più grande di 1024,
e potrebbe in alcune configurazioni causare problemi con:

  1. software che viene eseguito all’avvio (ad esempio, vecchie versioni di LILO)
  2. software di avvio e partizionamento di altri OS
    (ad esempio, DOS FDISK, OS/2 FDISK)

Comando (m per aiuto): <– m
Azione comando
a attiva un flag avviabile
b modifica bsd disklabel
c attiva il flag di compatibilità dos
d elimina una partizione
l elenca i tipi di partizione conosciuti
m stampa questo menu
n aggiungi una nuova partizione
o crea una nuova tabella delle partizioni DOS vuota
p stampa la tabella delle partizioni
q esci senza salvare le modifiche
s crea una nuova sun disklabel vuota
t cambia l’id di sistema di una partizione
u cambia unità di visualizzazione/inserimento
v verifica la tabella delle partizioni
w scrivi la tabella su disco ed esci
x funzionalità extra (solo per esperti)

Comando (m per aiuto): <– t
Partizione selezionata 1
Codice esadecimale (tipo L per elencare i codici): <– fd
Cambiato il tipo di sistema della partizione 1 in fd (Linux raid autodetect)

Comando (m per aiuto): <– w
La tabella delle partizioni è stata modificata!

Chiamando ioctl() per rileggere la tabella delle partizioni.
Sincronizzazione dischi.

Fai lo stesso con /dev/sdd1:

fdisk /dev/sdd

Successivamente aggiungi /dev/sdb1 a /dev/md0 e /dev/sdd1 a /dev/md1:

mdadm --manage /dev/md0 --add /dev/sdb1
server1:~# mdadm --manage /dev/md0 --add /dev/sdb1  
 mdadm: aggiunto /dev/sdb1
mdadm --manage /dev/md1 --add /dev/sdd1
server1:~# mdadm --manage /dev/md1 --add /dev/sdd1  
 mdadm: aggiunto /dev/sdd1

Ora i due array RAID saranno sincronizzati. Questo richiederà del tempo, puoi controllare con

cat /proc/mdstat

quando il processo è terminato. L’uscita appare così per un processo non completato:

server1:~# cat /proc/mdstat  
 Personalità : [linear] [multipath] [raid0] [raid1] [raid5] [raid4] [raid6] [raid10]  
 md1 : attivo raid1 sdd1[2] sde1[0]  
     24418688 blocchi [2/1] [U_]  
     [=>...................]  recupero =  6.4% (1586560/24418688) finire=1.9min velocità=198320K/sec  
   
 md0 : attivo raid1 sdb1[2] sdc1[0]  
     24418688 blocchi [2/1] [U_]  
     [==>..................]  recupero = 10.5% (2587264/24418688) finire=2.8min velocità=129363K/sec  
   
 dispositivi non utilizzati: 

e così quando il processo è terminato:

server1:~# cat /proc/mdstat  
 Personalità : [linear] [multipath] [raid0] [raid1] [raid5] [raid4] [raid6] [raid10]  
 md1 : attivo raid1 sdd1[1] sde1[0]  
     24418688 blocchi [2/2] [UU]  
   
 md0 : attivo raid1 sdb1[1] sdc1[0]  
     24418688 blocchi [2/2] [UU]  
   
 dispositivi non utilizzati: 

Se dai un’occhiata alla Dimensione PV nell’uscita di

pvdisplay

vedrai che 2 * 23.29GB = 46.58GB sono disponibili, tuttavia solo 40GB (share) + 5GB (backup) + 1GB (media) = 46GB sono utilizzati, il che significa che potremmo estendere uno dei nostri dispositivi logici di circa 0.5GB. Ho già mostrato come estendere un volume logico ext3 (share), quindi ora ridimensioneremo media che utilizza reiserfs. I filesystem reiserfs possono essere ridimensionati senza smontare:

lvextend -L1.5G /dev/fileserver/media
server1:~# lvextend -L1.5G /dev/fileserver/media  
  Estensione del volume logico media a 1.50 GB  
  Volume logico media ridimensionato con successo
resize_reiserfs /dev/fileserver/media
server1:~# resize_reiserfs /dev/fileserver/media  
 resize_reiserfs 3.6.19 (2003 www.namesys.com)
resize_reiserfs: Ridimensionamento online completato con successo.

L’uscita di

df -h

appare così:

server1:~# df -h  
 Filesystem            Size  Used Avail Use% Mounted on  
 /dev/sda2              19G  666M   17G   4% /  
 tmpfs                  78M     0   78M   0% /lib/init/rw  
 udev                   10M   92K   10M   1% /dev  
 tmpfs                  78M     0   78M   0% /dev/shm  
 /dev/sda1            137M   17M  114M  13% /boot  
 /dev/mapper/fileserver-share  
                      40G  177M   38G   1% /var/share  
 /dev/mapper/fileserver-backup  
                      5.0G  144K  5.0G   1% /var/backup  
 /dev/mapper/fileserver-media  
                      1.5G   33M  1.5G   3% /var/media

Se vogliamo che i nostri volumi logici vengano montati automaticamente all’avvio, dobbiamo modificare di nuovo /etc/fstab (come nel capitolo 3):

mv /etc/fstab /etc/fstab_orig  
 cat /dev/null > /etc/fstab
vi /etc/fstab

Metti il seguente nel file:

| # /etc/fstab: informazioni statiche sul file system. # # proc /proc proc defaults 0 0 /dev/sda2 / ext3 defaults,errors=remount-ro 0 1 /dev/sda1 /boot ext3 defaults 0 2 /dev/hdc /media/cdrom0 udf,iso9660 user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0 /dev/fileserver/share /var/share ext3 rw,noatime 0 0 /dev/fileserver/backup /var/backup xfs rw,noatime 0 0 /dev/fileserver/media /var/media reiserfs rw,noatime 0 0 |

Se lo confronti con il nostro backup del file originale, /etc/fstab_orig, noterai che abbiamo aggiunto le righe:

/dev/fileserver/share   /var/share     ext3       rw,noatime    0 0  
/dev/fileserver/backup    /var/backup      xfs        rw,noatime    0 0  
/dev/fileserver/media    /var/media      reiserfs   rw,noatime    0 0

Ora riavviamo il sistema:

shutdown -r now

Dopo che il sistema è ripartito, esegui di nuovo

df -h

dovrebbe ancora mostrare i nostri volumi logici nell’uscita:

server1:~# df -h  
 Filesystem            Size  Used Avail Use% Mounted on  
 /dev/sda2              19G  666M   17G   4% /  
 tmpfs                  78M     0   78M   0% /lib/init/rw  
 udev                   10M   100K   10M   1% /dev  
 tmpfs                  78M     0   78M   0% /dev/shm  
 /dev/sda1            137M   17M  114M  13% /boot  
 /dev/mapper/fileserver-share  
                      40G  177M   38G   1% /var/share  
 /dev/mapper/fileserver-backup  
                      5.0G  144K  5.0G   1% /var/backup  
 /dev/mapper/fileserver-media  
                      1.5G   33M  1.5G   3% /var/media

Ora abbiamo finito con la nostra configurazione LVM su RAID1.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.