Informazioni generali sul LVM (Logical Volume Manager)
Per creare un PDF, utilizzare la funzione “Stampa” in fondo alla pagina.
Articolo valido per server dedicati acquistati in offerta speciale o prima del 20 ottobre 2021
In questo articolo ti spieghiamo come funziona il Logical Volume Manager (LVM) e i vantaggi che questo ti offre.
Nei Server Cloud, il Logical Volume Manager (LVM) viene utilizzato per gestire lo spazio di archiviazione. Il Logical Volume Manager imposta un livello logico tra il file system e le partizioni della memoria dati utilizzata. Questo permette di creare un file system che copre più partizioni e/o dischi. In questo modo, ad esempio, è possibile combinare lo spazio di archiviazione di più partizioni o supporti dati.
Ulteriori vantaggi del Logical Volume Manager
Il Logical Volume Manager offre inoltre i seguenti vantaggi:
- I volumi logici possono essere creati, ingranditi oppure ridotti durante il funzionamento. La formattazione dei supporti dati non è necessaria. Tuttavia, la dimensione del volume logico deve essere modificata manualmente in seguito. 
- I dati possono essere riorganizzati durante il funzionamento. 
- I dati possono essere distribuiti su diversi supporti dati. Questo può aumentare in modo significativo il flusso di dati. 
- I dati possono essere facilmente clonati. 
- Le istantanee possono essere scattate durante il funzionamento. 
Termini importanti
Il Logical Volume Manager gestisce lo spazio di archiviazione su tre livelli:
Physical Volume: il volume fisico rappresenta il livello più basso di un LVM. Si tratta di un dispositivo a blocchi gestito dal Logical Volume Manager. Il dispositivo a blocchi può essere costituito da una memoria dati (ad es. un SSD) o da una partizione.
Volume Group: i volumi fisici possono essere raggruppati in uno o più gruppi di volumi. I gruppi di volumi rappresentano una sorta di pool di archiviazione che può essere ingrandito se necessario.
Logical Volume: i gruppi di volumi vengono suddivisi in uno o più volumi logici. I volumi logici possono essere utilizzati come una normale partizione, possono essere formattati con un qualsiasi file system e possono essere montati.
Quando utilizzi il Logical Volume Manager, le partizioni classiche vengono inizializzate come volumi fisici (PV), che vengono assegnati ad un gruppo di volumi (VG). All'interno di questo gruppo di volumi, i volumi logici (LV) possono essere creati e formattati con qualsiasi file system. Il Logical Volume Manager consente quindi una facile gestione di partizioni modificabili dinamicamente, le cui dimensioni possono essere modificate senza rischiare una perdita di dati.
LVM: configurazione di base del server cloud
Sui server cloud con sistema operativo Linux, il Logical Volume Manager (LVM) viene utilizzato per gestire lo spazio di archiviazione. Questi server cloud sono configurati in modo che il sistema e i dati dell'utente si trovino insieme su un unico volume logico. Questo volume logico è montato su /.
LVM: configurazione di base del server dedicato
Sui server dedicati con sistema operativo Linux, il Logical Volume Manager (LVM) viene utilizzato per gestire lo spazio di archiviazione. Se crei un server dedicato con un'immagine IONOS, l'intero spazio di archiviazione del disco o dei dischi rigidi non viene partizionato quando il server viene consegnato. Questo permette di distribuire lo spazio di archiviazione individualmente.
Se installi un'immagine IONOS con Plesk sul server, circa il 90% dello spazio di archiviazione disponibile viene partizionato.
Visualizzare le informazioni relative ai dispositivi senza una tabella delle partizioni valida
Con il comando lsblk puoi anche visualizzare informazioni relative ai dispositivi su cui è stata creata una tabella delle partizioni valida. Dopo aver inserito il comando, ti verranno mostrate, ad es., le seguenti informazioni:
Cloud Server
[root@localhost ~]# lsblk
 NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
 sda               8:0    0   80G  0 disk
 ├─sda1            8:1    0  512M  0 part /boot
 └─sda2            8:2    0 79.5G  0 part
   ├─centos-root 253:0    0 77.5G  0 lvm  /
   └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
 sr0              11:0    1 1024M  0 rom
Server dedicato con hardware RAID
root@FB84A0:~# lsblk
 NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
 sda             8:0    0  1.8T  0 disk
 ├─sda1          8:1    0    2M  0 part
 ├─sda2          8:2    0   28G  0 part /
 ├─sda3          8:3    0  9.3G  0 part [SWAP]
 └─sda4          8:4    0  1.8T  0 part
   ├─vg00-usr  253:0    0   20G  0 lvm  /usr
   ├─vg00-var  253:1    0  1.6T  0 lvm  /var
   ├─vg00-home 253:2    0   15G  0 lvm  /home
   └─vg00-opt  253:3    0   20G  0 lvm  /opt
 root@FB84A0:~#
Visualizzare le informazioni relative a un volume fisico
Il comando pvs fornisce informazioni su un supporto dati fisico in una forma configurabile. Qui viene visualizzata una linea per ogni vettore fisico di dati. Esempio:
Cloud Server
[root@localhost ~]# pvs
   PV         VG     Fmt  Attr PSize   PFree
   /dev/sda2  centos lvm2 a--  <79.47g    0
Server dedicato con hardware RAID
root@FB84A0:~# pvs
   PV         VG   Fmt  Attr PSize PFree
   /dev/sda4  vg00 lvm2 a--  1.78t 176.02g
 Utilizza il comando pvdisplay per ottenere informazioni dettagliate su ogni disco fisico.
Esempio:
[root@localhost ~]# pvdisplay
   --- Physical volume ---
   PV Name               /dev/sda2
   VG Name               centos
   PV Size               <79.50 GiB / not usable 30.00 MiB
   Allocatable           yes (but full)
   PE Size               32.00 MiB
   Total PE              2543
   Free PE               0
   Allocated PE          2543
   PV UUID               1ZuY22-LgCo-vvMJ-1RsZ-1WNb-Cl3F-s0xR5t
 Il comando pvscan analizza tutti i dispositivi a blocchi LVM supportati nel sistema per i dischi fisici. Esempio:
Cloud Server
[root@localhost ~]# pvscan
   PV /dev/sda2   VG centos          lvm2 [<79.47 GiB / 0    free]
   Total: 1 [<79.47 GiB] / in use: 1 [<79.47 GiB] / in no VG: 0 [0   ]
Server dedicato
root@FB84A0:~# pvscan
   PV /dev/sda4   VG vg00            lvm2 [1.78 TiB / 176.02 GiB free]
   Total: 1 [1.78 TiB] / in use: 1 [1.78 TiB] / in no VG: 0 [0   ]
Visualizzare le informazioni relative ai gruppi di volumi
Per visualizzare le informazioni relative ai gruppi di volumi, immetti il comando vgs. Esempio:
[root@localhost ~]# vgs
   VG     #PV #LV #SN Attr   VSize   VFree
   centos   1   2   0 wz--n- <79.47g    0
 Utilizza il comando vgdisplay per ottenere informazioni dettagliate su ogni disco fisico. Esempio:
[root@localhost ~]# vgdisplay
   --- Volume group ---
   VG Name               centos
   System ID
   Format                lvm2
   Metadata Areas        1
   Metadata Sequence No  5
   VG Access             read/write
   VG Status             resizable
   MAX LV                0
   Cur LV                2
   Open LV               2
   Max PV                0
   Cur PV                1
   Act PV                1
   VG Size               <79.47 GiB
   PE Size               32.00 MiB
   Total PE              2543
   Alloc PE / Size       2543 / <79.47 GiB
   Free  PE / Size       0 / 0
   VG UUID               2rnjKm-69u5-xEfb-zWj7-6fxI-9SnN-WzCGK2
Visualizzare le informazioni relative ai volumi logici
Per visualizzare le informazioni relative ai volumi logici, immetti il comando lvs. Esempio:
[root@localhost ~]# lvs
   LV   VG     Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
   root centos -wi-ao---- <77.47g                                                
   swap centos -wi-ao----   2.00g 
Utilizza il comando vgdisplay per ottenere informazioni dettagliate su ogni volume logico. Esempio:
[root@localhost ~]# lvdisplay
   --- Logical volume ---
   LV Path                /dev/centos/swap
   LV Name                swap
   VG Name                centos
   LV UUID                76LG6l-7eYC-M4ok-bGd2-tfeh-cLdV-WlHcdB
   LV Write Access        read/write
   LV Creation host, time localhost, 2019-09-27 10:58:11 +0000
   LV Status              available
   # open                 2
   LV Size                2.00 GiB
   Current LE             64
   Segments               1
   Allocation             inherit
   Read ahead sectors     auto
   - currently set to     8192
   Block device           253:1
   --- Logical volume ---
   LV Path                /dev/centos/root
   LV Name                root
   VG Name                centos
   LV UUID                w9pndm-91CQ-M1Xs-UYWc-KXoB-zJiC-FbfZEe
   LV Write Access        read/write
   LV Creation host, time localhost, 2019-09-27 10:58:12 +0000
   LV Status              available
   # open                 1
   LV Size                <77.47 GiB
   Current LE             2479
   Segments               1
   Allocation             inherit
   Read ahead sectors     auto
   - currently set to     8192
   Block device           253:0
Visualizzare una lista dei file system
Per visualizzare una lista dei file system e identificare il file system, immetti il comando df -h. L'abbreviazione df sta per disco libero. Con il parametro -h puoi visualizzare il numero di blocchi occupati in forma leggibile in giga, mega o kilobyte.
Di solito, il disco viene occupato con la seguente suddivisione:
CentOS 7
[root@localhost ~]# df -h
 Filesystem                Size  Used Avail Use% Mounted on
 /dev/mapper/centos-root   78G  2.2G   76G   3%  /
 devtmpfs                  898M     0  898M   0% /dev
 tmpfs                     910M     0  910M   0% /dev/shm
 tmpfs                     910M  101M  810M  12% /run
 tmpfs                     910M     0  910M   0% /sys/fs/cgroup
 /dev/sda1                 509M  170M  340M  34% /boot
 tmpfs                     182M     0  182M   0% /run/user/0
Ubuntu 18.04
root@localhost:~# df -h
 Filesystem             Size  Used Avail Use% Mounted on
 udev                   963M     0  963M   0% /dev
 tmpfs                  198M  784K  197M   1% /run
 /dev/mapper/vg00-lv01   77G  2.5G   71G   4% /
 tmpfs                  986M     0  986M   0% /dev/shm
 tmpfs                  5.0M     0  5.0M   0% /run/lock
 tmpfs                  986M     0  986M   0% /sys/fs/cgroup
 /dev/sda1              464M   60M  377M  14% /boot
 tmpfs                  197M     0  197M   0% /run/user/0
/dev/mapper/centos-root o /dev/mapper/vg00-lv01 indicano il volume logico montato su / negli esempi precedenti. Questo contiene quasi tutto lo spazio di archiviazione. tmpfs è un disco RAM. Questo è montato su /dev/shm. /dev/sda1 è la partizione di avvio. Questa è montata su /boot.
Visualizzare una lista dei dischi rigidi e delle partizioni
Per visualizzare una lista dei dischi rigidi e delle partizioni, immetti il comando fdisk -l /dev/sda. fdisk è un programma a riga di comando per partizionare i dischi rigidi. Con questo programma è possibile visualizzare, creare o eliminare le partizioni. Dopo aver inserito questo comando, viene visualizzato il partizionamento del disco rigido:
CentOS 7
[root@localhost ~]# fdisk -l
 Disk /dev/sda: 80 GiB, 85899345920 bytes, 167772160 sectors
 Units: sectors of 1 * 512 = 512 bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
 Disklabel type: dos
 Disk identifier: 0xe68dc2ef
 Device     Boot  Start       End   Sectors  Size Id Type
 /dev/sda1  *      2048    999423    997376  487M 83 Linux
 /dev/sda2       999424 167772159 166772736 79.5G 8e Linux LVM
 Disk /dev/mapper/vg00-lv01: 77.6 GiB, 83336626176 bytes, 162766848 sectors
 Units: sectors of 1 * 512 = 512 bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
 Disk /dev/mapper/vg00-lv00: 1.9 GiB, 2046820352 bytes, 3997696 sectors
 Units: sectors of 1 * 512 = 512 bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
Ubuntu 18.04
root@localhost:~# fdisk -l
 Disk /dev/sda: 80 GiB, 85899345920 bytes, 167772160 sectors
 Units: sectors of 1 * 512 = 512 bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
 Disklabel type: dos
 Disk identifier: 0xe68dc2ef
 Device     Boot  Start       End   Sectors  Size Id Type
 /dev/sda1  *      2048    999423    997376  487M 83 Linux
 /dev/sda2       999424 167772159 166772736 79.5G 8e Linux LVM
 Disk /dev/mapper/vg00-lv01: 77.6 GiB, 83336626176 bytes, 162766848 sectors
 Units: sectors of 1 * 512 = 512 bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
 Disk /dev/mapper/vg00-lv00: 1.9 GiB, 2046820352 bytes, 3997696 sectors
 Units: sectors of 1 * 512 = 512 bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
Creare un nuovo volume logico sul server
Per creare un nuovo volume logico, procedi come segue:
- Per visualizzare le informazioni sui gruppi di volumi, immetti il comando vgdisplay. 
- Annotati il gruppo di volumi desiderato. 
- Per creare un volume logico, immetti il seguente comando: - lvcreate -L 20G -n VOL GROUP - Nell'esempio seguente, viene creato il gruppo di volumi vg00 con una dimensione di 20 GB. - root@localhost:~# lvcreate -L 20G -n lv00 vg00 
- Per utilizzare lo spazio di archiviazione, è necessario creare il file system sul volume logico. Esempi: - mkfs.xfs - mkfs.ext 
Ulteriori articoli di aiuto
Puoi trovare maggiori informazioni nei seguenti articoli:
Per server cloud: Modificare il volume logico (LV) dopo aver ingrandito l'unità SSD
 Per server dedicati: Modificare le dimensioni del volume logico di un server dedicato (Linux)
 Per server dedicati gestiti su un account IONOS: Aumentare un volume che è già stato creato su un server
Contenuto
- Ulteriori vantaggi del Logical Volume Manager
- Termini importanti
- LVM: configurazione di base del server cloud
- LVM: configurazione di base del server dedicato
- Visualizzare le informazioni relative ai dispositivi senza una tabella delle partizioni valida
- Visualizzare le informazioni relative a un volume fisico
- Visualizzare le informazioni relative ai gruppi di volumi
- Visualizzare le informazioni relative ai volumi logici
- Visualizzare una lista dei file system
- Visualizzare una lista dei dischi rigidi e delle partizioni
- Creare un nuovo volume logico sul server
- Ulteriori articoli di aiuto
- Torna su