Logical Volume Manager Administration
Guida per l'amministratore LVM
Edizione 3
Sommario
Introduzione
1. Informazioni su questa guida Copia collegamentoCollegamento copiato negli appunti!
2. A chi è rivolto Copia collegamentoCollegamento copiato negli appunti!
3. Versioni software Copia collegamentoCollegamento copiato negli appunti!
Software | Descrizione |
---|---|
RHEL5
|
si riferisce a RHEL5 o versioni più recenti
|
GFS
|
si riferisce a GFS per RHEL5 e versioni più recenti
|
4. Documentazione relativa Copia collegamentoCollegamento copiato negli appunti!
- Red Hat Enterprise Linux Installation Guide — Fornisce le informazioni relative al processo d'installazione di Red Hat Enterprise Linux 5.
- Red Hat Enterprise Linux Deployment Guide — Fornisce le informazioni relative all'implementazione e amministrazione di Red Hat Enterprise Linux 5.
- Red Hat Cluster Suite Overview — Fornisce una panoramica molto dettagliata sul Red Hat Cluster Suite.
- Configurazione e gestione del Red Hat Cluster — Fornisce le informazioni relative all'installazione, configurazione e gestione dei componenti del Red Hat Cluster.
- Global File System: Configurazione e gestione — Fornisce le informazioni sull'installazione, configurazione e gestione del Red Hat GFS (Red Hat Global File System).
- Global File System 2: Configurazione e amministrazione — Fornisce le informazioni sull'installazione, configurazione ed amministrazione del Red Hat GFS2 (Red Hat Global File System 2).
- Come utilizzare il Device-Mapper Multipath — Fornisce le informazioni relative all'utilizzo del Device-Mapper Multipath di Red Hat Enterprise Linux 5.
- Come utilizzare GNBD con il Global File System — Fornisce una panoramica su come utilizzare il Global Network Block Device (GNBD) con Red Hat GFS.
- Linux Virtual Server Administration — Fornisce le informazioni necessarie per la configurazione di sistemi per prestazioni elevate e dei servizi con il Linux Virtual Server (LVS).
- Note di rilascio per il Red Hat Cluster Suite — Fornisce le informazioni sulla release corrente del Red Hat Cluster Suite.
5. Suggerimenti Copia collegamentoCollegamento copiato negli appunti!
rh-cs
.
Bugzilla component: Documentation-cluster Book identifier: Cluster_Logical_Volume_Manager(EN)-5 (2009-01-05T15:20)
Bugzilla component: Documentation-cluster
Book identifier: Cluster_Logical_Volume_Manager(EN)-5 (2009-01-05T15:20)
Capitolo 1. LVM Logical Volume Manager Copia collegamentoCollegamento copiato negli appunti!
1.1. Volumi logici Copia collegamentoCollegamento copiato negli appunti!
- Capacità più flessibileQuando si utilizzano i volumi logici i file system possono essere estesi attraverso dischi multipli, poichè è possibile aggregare sia i dischi che le partizioni in un volume logico singolo.
- Pool di storage ridimensionabiliÈ possibile estendere o ridurre la dimensione dei volumi logici con alcuni comandi software semplici, senza riformattare e ripartizionare i dispositivi del disco interessati.
- Riassegnazione dati onlinePer implementare sottosistemi di storage nuovi, più veloci o più resistenti, è possibile spostare i dati mentre il vostro sistema è attivo. I dati possono essere riassegnati sui dischi durante l'utilizzo dei dischi stessi. Per esempio, è possibile svuotare un disco di tipo hot-swappable prima di rimuoverlo.
- Come nominare un dispositivo in modo convenienteI volumi dello storage locale possono essere gestiti in gruppi definiti dall'utente, i quali possono essere chiamati a vostra discrezione.
- Disk stripingÈ possibile creare un volume logico in grado di scrivere i dati su due o più dischi. Ciò potrebbe aumentarne drammaticamente le prestazioni.
- Volumi in mirroringI volumi logici forniscono un modo molto conveniente per configurare un mirror per i vostri dati.
- Snapshot del volumeUtilizzando i volumi logici è possibile eseguire delle snapshot del dispositivo per un backup conforme, oppure per provare gli effetti delle modifiche senza interessare i dati reali.
1.2. Panoramica sull'architettura di LVM Copia collegamentoCollegamento copiato negli appunti!
- capacità flessibile
- conservazione dei metadati più efficiente
- miglior formato per il processo di recupero
- nuovo formato metadata ASCII
- modifiche atomiche per i metadata
- copie ridondanti di metadata
vgconvert
. Per informazioni su come convertire il formato dei metadata, consultate la pagina man di vgconvert
(8).
Figura 1.1. LVM Logical Volume Components
1.3. LVM Logical Volume Manager (CLVM) Copia collegamentoCollegamento copiato negli appunti!
- Se solo uno nodo del vostro sistema ha bisogno di accedere allo storage da voi configurato come volumi logici, allora sarà possibile utilizzare LVM senza le estensioni CLVM, in questo modo i volumi logici creati con il nodo in questione risulteranno locali al nodo.
- Se utilizzate un sistema clusterizzato per il processo di failover dove un singolo nodo accede allo storage, e risulta attivo in ogni dato momento, allora è consigliato utilizzare gli agent High Availability Logical Volume Management (HA-LVM). Per informazioni su HA-LVM, consultare la guida Configurazione e gestione di un Red Hat Cluster.
- Se più nodi del cluster hanno la necessità di accedere al vostro storage, il quale verrà di conseguenza condiviso tra i nodi attivi, allora sarà necessario utilizzare CLVM. CLVM permette ad un utente di configurare i volumi logici su di uno storage condiviso, bloccando l'accesso allo storage fisico durante la configurazione di un volume logico ed utilizza i servizi di bloccaggio clusterizzati per gestire lo storage condiviso.
clmvd
, deve essere in esecuzione. Il demone clmvd
rappresenta l'estensione più importante del clustering per LVM. Il demone clvmd
viene eseguito su ogni computer del cluster e distribuisce gli aggiornamenti dei metadata LVM in un cluster, presentando ad ogni computer la stessa visuale dei volumi logici. Per informazioni su come installare e amministrare Red Hat Cluster Suite, consultare la Configurazione e gestione di un Red Hat Cluster.
clmvd
sia stato iniziato al momento dell'avvio eseguire un comando chkconfig ... on
sul servizio clvmd
nel modo seguente:
chkconfig clvmd on
# chkconfig clvmd on
clvmd
non è stato iniziato sarà possibile eseguire un comando service ... start
sul servizio clvmd
nel modo seguente:
service clvmd start
# service clvmd start
Figura 1.2. Panoramica di CLVM
Nota
clvmd
) o gli agent High Availability Logical Volume Management. Se non siete in grado di utilizzare il demone clvmd
o HA-LVM per ragioni operative, o perchè non siete in possesso degli entitlement corretti, allora non utilizzare il single-instance LVM sul disco condiviso poichè tale operazione potrebbe corrompere i dati. Per maggiori informazioni a riguardo contattare un rappresentante per il servizio clienti di Red Hat.
Nota
lvm.conf
file for cluster-wide locking. Information on configuring the lvm.conf
file to support clustered locking is provided within the lvm.conf
file itself. For information about the lvm.conf
file, see Appendice B, File di configurazione di LVM.
1.4. Panoramica del documento Copia collegamentoCollegamento copiato negli appunti!
- Capitolo 2, Componenti di LVM describes the components that make up an LVM logical volume.
- Capitolo 3, Panoramica sull'amministrazione di LVM provides an overview of the basic steps you perform to configure LVM logical volumes, whether you are using the LVM Command Line Interface (CLI) commands or the LVM Graphical User Interface (GUI).
- Capitolo 4, Amministrazione di LVM con il CLI summarizes the individual administrative tasks you can perform with the LVM CLI commands to create and maintain logical volumes.
- Capitolo 5, Esempi di configurazione LVM provides a variety of LVM configuration examples.
- Capitolo 6, Troubleshooting LVM provides instructions for troubleshooting a variety of LVM issues.
- Capitolo 7, Amministrazione di LVM con la GUI di LVM summarizes the operating of the LVM GUI.
- Appendice A, Device Mapper describes the Device Mapper that LVM uses to map logical and physical volumes.
- Appendice B, File di configurazione di LVM describes the LVM configuration files.
- Appendice C, Tag dell'oggetto LVM describes LVM object tags and host tags.
- Appendice D, Metadata del gruppo di volumi di LVM describes LVM volume group metadata, and includes a sample copy of metadata for an LVM volume group.
Capitolo 2. Componenti di LVM Copia collegamentoCollegamento copiato negli appunti!
2.1. Physical Volumes Copia collegamentoCollegamento copiato negli appunti!
2.1.1. LVM Physical Volume Layout Copia collegamentoCollegamento copiato negli appunti!
Nota
Figura 2.1. Disposizione del Physical Volume
2.1.2. Partizioni multiple su di un disco Copia collegamentoCollegamento copiato negli appunti!
- Amministrazione più convenienteÈ più semplice controllare l'hardware in un sistema se ogni disco reale appare solo una volta. Tale tendenza è particolarmente vera se un disco fallisce. In aggiunta, i physical volume multipli su di un disco singolo potrebbero causare un avvertimento da parte kernel sulle diverse partizioni sconosciute al momento dell'avvio.
- Prestazioni relative allo stripingLVM non è in grado di indicare la presenza di due physical volume sullo stesso disco fisico. Per questo motivo se viene creato un volume logico 'striped' quando due volumi fisici si trovano sullo stesso disco fisico, le sezioni più piccole (bande) possono essere presenti su diverse partizioni dello stesso disco. Tale comportamento potrebbe risultare in una diminuzione delle prestazioni e non in un aumento.
2.2. Gruppi di volumi Copia collegamentoCollegamento copiato negli appunti!
2.3. Volumi logici LVM Copia collegamentoCollegamento copiato negli appunti!
2.3.1. Volumi lineari Copia collegamentoCollegamento copiato negli appunti!
Figura 2.2. Mappatura estensione
VG1
with a physical extent size of 4MB. This volume group includes 2 physical volumes named PV1
and PV2
. The physical volumes are divided into 4MB units, since that is the extent size. In this example, PV1
is 100 extents in size (400MB) and PV2
is 200 extents in size (800MB). You can create a linear volume any size between 1 and 300 extents (4MB to 1200MB). In this example, the linear volume named LV1
is 300 extents in size.
Figura 2.3. Volume lineare con physical volume diversi
LV1
, which is 250 extents in size (1000MB) and LV2
which is 50 extents in size (200MB).
Figura 2.4. Multiple Logical Volumes
2.3.2. Volumi logici striped Copia collegamentoCollegamento copiato negli appunti!
- la prima banda di dati viene scritta su PV1
- la seconda banda viene scritta su PV2
- la terza viene scritta su PV3
- la quarta banda di dati viene scritta su PV1
Figura 2.5. Processo di stripping dei dati su tre PV
2.3.3. Volumi logici speculari Copia collegamentoCollegamento copiato negli appunti!
Figura 2.6. Mirrored Logical Volume
Nota
2.3.4. Volumi delle snapshot Copia collegamentoCollegamento copiato negli appunti!
Nota
Nota
- In particolare, è consigliato eseguire la snapshot se è necessario fare un backup su di un volume logico, senza arrestare l'aggiornamento 'live' dei dati da parte del sistema.
- È possibile eseguire il comando
fsck
sul file system di una snapshot, per controllare l'integrità del file system e determinare se il file system originale necessita di correzioni. - Poichè è possibile eseguire la lettura e scrittura della snapshot, è possibile testare le applicazioni con i dati di produzione, eseguendo una snapshot e successivamente alcuni test senza interessare i dati reali.
- È possibile creare ed usare i volumi con il monitor della macchina virtuale Xen. Potrete usare la snapshot per creare una immagine del disco, eseguirne una sua snapshot e modificarla per una istanza domU particolare. Successivamente potrete creare un'altra snapshot e modificarla per un altra istanza domU. Poichè l'unico storage utilizzato è rappresentato dalle sezioni modificate sull'origine o snapshot, la maggior parte del volume viene condiviso.
Capitolo 3. Panoramica sull'amministrazione di LVM Copia collegamentoCollegamento copiato negli appunti!
3.1. Creazione dei volumi LVM in un cluster Copia collegamentoCollegamento copiato negli appunti!
clmvd
daemon, must be started at boot time, as described in Sezione 1.3, «LVM Logical Volume Manager (CLVM)».
lvm.conf
file for cluster-wide locking. Information on configuring the lvm.conf
file to support clustered locking is provided within the lvm.conf
file itself. For information about the lvm.conf
file, see Appendice B, File di configurazione di LVM.
Nota
clvmd
) o gli agent High Availability Logical Volume Management. Se non siete in grado di utilizzare il demone clvmd
o HA-LVM per ragioni operative, o perchè non siete in possesso degli entitlement corretti, allora non utilizzare il single-instance LVM sul disco condiviso poichè tale operazione potrebbe corrompere i dati. Per maggiori informazioni a riguardo contattare un rappresentante per il servizio clienti di Red Hat.
3.2. Panoramica sulla creazione del volume logico Copia collegamentoCollegamento copiato negli appunti!
- Inizializzare le partizioni da utilizzare per il volume LVM come physical volume (tale operazione aggiungerà loro una etichetta).
- Creazione di un gruppo di volumi
- Creazione di un volume logico.
- Create un file system GFS sul volume logico con il comando
gfs_mkfs
. - Create un nuovo mount point con il comando
mkdir
. In un sistema clusterizzato, create il mount point su tutti i nodi nel cluster. - Montate il file system. Potreste aggiungere una riga a
fstab
per ogni nodo nel sistema.
3.3. Sviluppo di un file system su di un volume logico Copia collegamentoCollegamento copiato negli appunti!
- Create un nuovo Physical Volume.
- Estendete il gruppo di volumi che contiene il volume logico con il file system che state sviluppando, in modo da includere il nuovo Physical Volume.
- Aumentate il volume logico in modo da includere il nuovo Physical Volume.
- Sviluppo del file system.
3.4. Backup del volume logico Copia collegamentoCollegamento copiato negli appunti!
lvm.conf
. Per default, il backup dei metadata viene conservato in /etc/lvm/backup
mentre gli archivi vengono conservati in /etc/lvm/archive
. La durata della conservazione degli archivi dei metadata in /etc/lvm/archive
ed il numero dei file d'archivio, è determinato dai parametri da voi impostati nel file lvm.conf
. Un backup giornaliero del sistema dovrebbe includere i contesti della directory /etc/lvm
nel backup stesso.
/etc/lvm/backup
file with the vgcfgbackup
command. You can restore metadata with the vgcfgrestore
command. The vgcfgbackup
and vgcfgrestore
commands are described in Sezione 4.3.12, «Esecuzione del back up dei metadata del gruppo di volumi».
3.5. Registrazione Copia collegamentoCollegamento copiato negli appunti!
- output/errore standard
- syslog
- file di log
- funzione di log esterna
/etc/lvm/lvm.conf
file, which is described in Appendice B, File di configurazione di LVM.
Capitolo 4. Amministrazione di LVM con il CLI Copia collegamentoCollegamento copiato negli appunti!
Nota
clvmd
daemon. For information, see see Sezione 3.1, «Creazione dei volumi LVM in un cluster».
4.1. Come utilizzare i comandi CLI Copia collegamentoCollegamento copiato negli appunti!
--units
in un comando, la lettere minuscole indicano che le unità sono multipli di 1024, mentre lettere maiuscole indicano che le stesse unità sono multiple di 1000.
lvol0
in un gruppo di volumi chiamato vg0
, può essere specificato come vg0/lvol0
. Dove un elenco dei gruppi di volumi risulta necessario ma lasciato vuoto, verrà visualizzato un elenco di tutti i gruppi di volumi. Dove sarà necessario un elenco di volumi logicio ma al contrario viene fornito un gruppo di volumi, verrà visualizzato un elenco di tutti i volumi logici per quel gruppo di volumi. Per esempio il comando lvdisplay vg0
visualizzerà tutti i volumi logici nel gruppo di volumi vg0
.
-v
il quale può essere inserito numerose volte per aumentare la verbosità di un output. Per esempio, di seguito vengono mostrati gli esempi relativi all'output predefinito del comando lvcreate
.
lvcreate -L 50MB new_vg
# lvcreate -L 50MB new_vg
Rounding up size to full physical extent 52.00 MB
Logical volume "lvol0" created
lvcreate
con l'argomento -v
.
-vv
, -vvv
o the -vvvv
per visualizzare informazioni più dettagliate sull'esecuzione del comando. L'argomento -vvvv
fornisce la quantità massima di informazioni in questo momento. Il seguente esempio mostra solo le prime righe dell'output per il comando lvcreate
con l'argomento -vvvv
.
--help
del comando.
commandname --help
commandname --help
man
:
man commandname
man commandname
man lvm
fornisce informazioni generali online su LVM.
/dev/sdf
which is part of a volume group and, when you plug it back in, you find that it is now /dev/sdk
. LVM will still find the physical volume because it identifies the physical volume by its UUID and not its device name. For information on specifying the UUID of a physical volume when creating a physical volume, see see Sezione 6.4, «Recupero dei metadata del Physical Volume».
4.2. Amministrazione del Physical Volume Copia collegamentoCollegamento copiato negli appunti!
4.2.1. Creazione dei physical volume Copia collegamentoCollegamento copiato negli appunti!
4.2.1.1. Impostazione del tipo di partizione Copia collegamentoCollegamento copiato negli appunti!
fdisk
o cfdisk
o equivalente. Per tutti i dispositivi a disco solo la tabella delle partizioni deve essere rimossa. Tale processo distruggerà tutti i dati sul disco in questione. È possibile rimuovere una tabella delle partizioni esistente azzerando il primo settore con il seguente comando:
dd if=/dev/zero of=PhysicalVolume bs=512 count=1
dd if=/dev/zero of=PhysicalVolume bs=512 count=1
4.2.1.2. Inizializzazione dei physical volume Copia collegamentoCollegamento copiato negli appunti!
pvcreate
per inizializzare un dispositivo a blocchi da usare come Physical Volume. L'inizializzazione è analoga alla formattazione di un file system.
/dev/sdd1
, /dev/sde1
, e /dev/sdf1
per un utilizzo come volumi fisici LVM.
pvcreate /dev/sdd1 /dev/sde1 /dev/sdf1
pvcreate /dev/sdd1 /dev/sde1 /dev/sdf1
pvcreate
sulla partizione. Nel seguente esempio /dev/hdb1
viene inizializzato come physical volume di LVM, ed usato in un secondo momento come parte di un Physical Volume di LVM.
pvcreate /dev/hdb1
pvcreate /dev/hdb1
4.2.1.3. Scansione per dispositivi a blocchi Copia collegamentoCollegamento copiato negli appunti!
lvmdiskscan
, come riportato nel seguente esempio.
4.2.2. Visualizzazione dei physical volume Copia collegamentoCollegamento copiato negli appunti!
pvs
, pvdisplay
, e pvscan
.
pvs
command provides physical volume information in a configurable form, displaying one line per physical volume. The pvs
command provides a great deal of format control, and is useful for scripting. For information on using the pvs
command to customize your output, see Sezione 4.9, «Personalizzazione dei riporti per LVM».
pvdisplay
fornisce un output verboso con diverse righe per ogni Physical Volume. Esso visualizza le proprietà fisiche (dimensione, estensioni, gruppo di volumi ecc) in un formato fisso.
pvdisplay
per un Physical Volume singolo.
pvscan
esegue la scansione di tutti i dispositivi a blocchi di LVM nel sistema per physical volume.
lvm.conf
so that this command will avoid scanning specific physical volumes. For information on using filters to control which devices are scanned, see Sezione 4.6, «Controllo delle scansioni del dispositivo LVM con i filtri».
4.2.3. Come impedire l'assegnazione su di un physical volume Copia collegamentoCollegamento copiato negli appunti!
pvchange
. Tale operazione potrebbe essere necessaria se sono presenti sul disco alcuni errori, oppure se desiderate rimuovere il physical volume.
/dev/sdk1
.
pvchange -x n /dev/sdk1
pvchange -x n /dev/sdk1
-xy
del comando pvchange
, per abilitare l'assegnazione dove precedentemente non permessa.
4.2.4. Come variare la dimensione di un Physical Volume Copia collegamentoCollegamento copiato negli appunti!
pvresize
per aggiornare LVM con la nuova dimensione. Potrete eseguire questo comando mentre LVM utilizza il Physical Volume.
4.2.5. Rimozione dei physical volume Copia collegamentoCollegamento copiato negli appunti!
pvremove
. L'esecuzione del comando pvremove
azzererà i metadata di LVM su di un physical volume vuoto.
vgreduce
command, as described in Sezione 4.3.6, «Rimozione dei physical volume da un gruppo di volumi».
pvremove /dev/ram15
# pvremove /dev/ram15
Labels on physical volume "/dev/ram15" successfully wiped
4.3. Amministrazione del gruppo di volumi Copia collegamentoCollegamento copiato negli appunti!
4.3.1. Creazione dei gruppi di volumi Copia collegamentoCollegamento copiato negli appunti!
vgcreate
command. The vgcreate
command creates a new volume group by name and adds at least one physical volume to it.
vg1
il quale contiene i physical volume /dev/sdd1
e /dev/sde1
.
vgcreate vg1 /dev/sdd1 /dev/sde1
vgcreate vg1 /dev/sdd1 /dev/sde1
vgcreate
se il valore predefinito non risulta essere idoneo, utilizzando l'argomento -s
. È possibile inserire dei limiti sul numero di logical volumes o physical ospitati dal gruppo di volumi, utilizzando gli argomenti -p
e -l
del comando vgcreate
.
normale
. È possibile utilizzare l'argomento --alloc
del comando vgcreate
, per specificare una policy di assegnazione di tipo contiguous
, anywhere
, o cling
.
contiguous
le nuove estensioni sono adiacenti alle estensioni esistenti. Se è disponibile un numero sufficiente di estensioni per poter soddisfare una richiesta di assegnazione, e se la policy di assegnazione normal
non le usa, la policy anywhere
sarà in grado di farlo anche a rischio di ridurre la prestazione, a causa del posizionamento di due bande sullo stesso physical volume. La policy cling
posiziona le nuove estensioni sullo stesso physical volume delle estensioni esistenti, nella stessa banda del volume logico. Queste policy possono essere modificate usando il comando vgchange
.
normal
sono necessarie solo in casi particolari, quando è richiesto specificare un'assegnazione di estensioni non standard o non comune.
/dev
con la seguente disposizione
/dev/vg/lv/
/dev/vg/lv/
myvg1
e myvg2
, ognuno dei quali con tre logical volumes chiamati lvo1
, lvo2
, e lvo3
, ciò creerà sei file speciali del dispositivo:
4.3.2. Creazione dei gruppi di volumi in un cluster Copia collegamentoCollegamento copiato negli appunti!
vgcreate
, in modo simile ad una loro creazione su di un nodo singolo.
-c n
del comando vgcreate
.
vg1
il quale contiene i volumi fisici /dev/sdd1
e /dev/sde1
.
vgcreate -c n vg1 /dev/sdd1 /dev/sde1
vgcreate -c n vg1 /dev/sdd1 /dev/sde1
-c
option of the vgchange
command, which is described in Sezione 4.3.7, «Modifica dei parametri di un gruppo di volumi».
vgs
, il quale mostra l'attributo c
se il volume è clusterizzato. Il seguente comando mostra gli attributi dei gruppi di volumi VolGroup00
e testvg1
. In questo esempio VolGroup00
non è clusterizzato mentre testvg1
risulta esserlo, come riportato dall'attributo c
sotto l'intestazione Attr
.
vgs
[root@doc-07]# vgs
VG #PV #LV #SN Attr VSize VFree
VolGroup00 1 2 0 wz--n- 19.88G 0
testvg1 1 1 0 wz--nc 46.00G 8.00M
vgs
command, see Sezione 4.3.4, «Come visualizzare i gruppi di volumi»Sezione 4.9, «Personalizzazione dei riporti per LVM», and the vgs
man page.
4.3.3. Aggiunta di physical volume ad un gruppo di volumi Copia collegamentoCollegamento copiato negli appunti!
vgextend
command. The vgextend
command increases a volume group's capacity by adding one or more free physical volumes.
/dev/sdf1
al gruppo di volumi vg1
.
vgextend vg1 /dev/sdf1
vgextend vg1 /dev/sdf1
4.3.4. Come visualizzare i gruppi di volumi Copia collegamentoCollegamento copiato negli appunti!
vgs
e vgdisplay
.
vgscan
command will also display the volume groups, although its primary purpose is to scan all the disks for volume groups and rebuild the LVM cache file. For information on the vgscan
command, see Sezione 4.3.5, «Scansione dischi per i gruppi di volumi per la creazione del file di cache».
vgs
command provides volume group information in a configurable form, displaying one line per volume group. The vgs
command provides a great deal of format control, and is useful for scripting. For information on using the vgs
command to customize your output, see Sezione 4.9, «Personalizzazione dei riporti per LVM».
vgdisplay
mostra le proprietà del gruppo di volumi (come ad esempio dimensione, estensioni, numero di physical volume, ecc) attraverso una forma fissa. Il seguente esempio mostra l'output di un comando vgdisplay
per il gruppo di volumi new_vg
. Se non specificate un gruppo di volumi, tutti i gruppi di volumi esistenti verranno visualizzati.
4.3.5. Scansione dischi per i gruppi di volumi per la creazione del file di cache Copia collegamentoCollegamento copiato negli appunti!
vgscan
esegue la scansione di tutti i dispositivi a disco supportati nel sistema, andando alla ricerca dei physical volume di LVM e dei gruppi dei volumi. Ciò crea il file di cache di LVM in /etc/lvm/.cache
, il quale mantiene un elenco di dispositivi LVM correnti.
vgscan
automaticamente al momento dell'avvio del sistema ed in altri momenti durante il funzionamento di LVM, ad esempio durante l'esecuzione del comando vgcreate
, oppure quando LVM rileva una qualsiasi inconsistenza. Potrebbe essere necessario eseguire manualmente il comando vgscan
se modificate la configurazione del vostro hardware, rendendo così visibili al sistema i nuovi dispositivi i quali non erano presenti al momento dell'avvio. Tale procedura potrebbe essere necessaria, per esempio, se aggiungete nuovi dischi al sistema su di un SAN, oppure se eseguite l'hotplug di un nuovo disco etichettato come physical volume.
lvm.conf
file to restrict the scan to avoid specific devices. For information on using filters to control which devices are scanned, see Sezione 4.6, «Controllo delle scansioni del dispositivo LVM con i filtri».
vgscan
.
vgscan
# vgscan
Reading all physical volumes. This may take a while...
Found volume group "new_vg" using metadata type lvm2
Found volume group "officevg" using metadata type lvm2
4.3.6. Rimozione dei physical volume da un gruppo di volumi Copia collegamentoCollegamento copiato negli appunti!
vgreduce
command. The vgreduce
command shrinks a volume group's capacity by removing one or more empty physical volumes. This frees those physical volumes to be used in different volume groups or to be removed from the system.
pvdisplay
.
pvmove
. Successivamente, utilizzate il comando vgreduce
per rimuovere il physical volume:
/dev/hda1
dal gruppo di volumi my_volume_group
.
vgreduce my_volume_group /dev/hda1
# vgreduce my_volume_group /dev/hda1
4.3.7. Modifica dei parametri di un gruppo di volumi Copia collegamentoCollegamento copiato negli appunti!
vgchange
command. Primarily, however, this command is used to deactivate and activate volume groups, as described in Sezione 4.3.8, «Attivazione e disattivazione dei gruppi di volumi»,
vg00
a 128.
vgchange -l 128 /dev/vg00
vgchange -l 128 /dev/vg00
vgchange
, consultate la pagina man di vgchange
(8).
4.3.8. Attivazione e disattivazione dei gruppi di volumi Copia collegamentoCollegamento copiato negli appunti!
-a
(--available
) del comando vgchange
.
my_volume_group
.
vgchange -a n my_volume_group
vgchange -a n my_volume_group
lvchange
command, as described in Sezione 4.4.4, «Modifica dei parametri di un gruppo di volumi logici», For information on activating logical volumes on individual nodes in a cluster, see Sezione 4.8, «Attivazione dei volumi logici su nodi individuali in un cluster».
4.3.9. Rimozione dei gruppi di volumi Copia collegamentoCollegamento copiato negli appunti!
vgremove
.
vgremove officevg
# vgremove officevg
Volume group "officevg" successfully removed
4.3.10. Separazione di un gruppo di volumi Copia collegamentoCollegamento copiato negli appunti!
vgsplit
.
pvmove
per forzare la separazione.
smallvg
viene separato da quello vecchio bigvg
.
vgsplit bigvg smallvg /dev/ram15
# vgsplit bigvg smallvg /dev/ram15
Volume group "smallvg" successfully split from "bigvg"
4.3.11. Come unire i gruppi di volumi Copia collegamentoCollegamento copiato negli appunti!
vgmerge
command. You can merge an inactive "source" volume with an active or an inactive "destination" volume if the physical extent sizes of the volume are equal and the physical and logical volume summaries of both volume groups fit into the destination volume groups limits.
my_vg
, nel gruppo di volumi attivo o inattivo databases
fornendo informazioni verbose sul runtime.
vgmerge -v databases my_vg
vgmerge -v databases my_vg
4.3.12. Esecuzione del back up dei metadata del gruppo di volumi Copia collegamentoCollegamento copiato negli appunti!
lvm.conf
. Per default, il backup dei metadata viene conservato in /etc/lvm/backup
mentre gli archivi sono conservati su /etc/lvm/archives
. È possibile eseguire il backup manuale dei metadata sul file /etc/lvm/backup
attraverso il comando vgcfgbackup
.
vgcfrestore
ripristina i metadata di un gruppo di volumi dall'archivio, su tutti i physical volume nei gruppi di volumi.
vgcfgrestore
command to recover physical volume metadata, see Sezione 6.4, «Recupero dei metadata del Physical Volume».
4.3.13. Come rinominare un gruppo di volumi Copia collegamentoCollegamento copiato negli appunti!
vgrename
per rinominare un guppo di volumi esistente.
vg02
in my_volume_group
vgrename /dev/vg02 /dev/my_volume_group
vgrename /dev/vg02 /dev/my_volume_group
vgrename vg02 my_volume_group
vgrename vg02 my_volume_group
4.3.14. Come spostare un gruppo di volumi su di un altro sistema Copia collegamentoCollegamento copiato negli appunti!
vgexport
e vgimport
.
vgexport
rende un gruppo di volumi inattivo inaccessibile al sistema, ciò vi permetterà di distaccare i rispettivi physical volume. Il comando vgimport
rende un gruppo di volumi accessibile ad una macchina dopo che il comando vgexport
lo ha reso inattivo.
- Assicuratevi che nessun utente stia cercando di accedere ai file sui volumi attivi nel gruppo di volumi, successivamente smontate i volumi logici.
- Usate
-a n
del comandovgchange
per segnare il gruppo di volumi come inattivo, questo impedisce qualsiasi attività sul gruppo in questione. - Usate il comando
vgexport
per esportare il gruppo di volumi. Ciò impedisce il suo accesso da parte del sistema dal quale lo state rimuovendo.Dopo aver esportato il gruppo di volumi, il physical volume verrà visualizzato in un gruppo di volumi esportato quando eseguirete il comandopvscan
, come riportato nel seguente esempio.Copy to Clipboard Copied! Toggle word wrap Toggle overflow Prima di arrestare il sistema sarà possibile staccare i dischi che costituiscono il gruppo di volumi, ricollegandoli al nuovo sistema. - Una volta aver collegato i dischi al nuovo sistema, utilizzate il comando
vgimport
per importare il gruppo di volumi, rendendolo accessibile al nuovo sistema. - Attivate il gruppo di volumi con l'argomento
-a y
del comandovgchange
. - Montate il file system in modo da renderlo accessibile ed utilizzabile.
4.3.15. Come ricreare una directory del gruppo di volumi Copia collegamentoCollegamento copiato negli appunti!
vgmknodes
. Questo comando controlla i file speciali di LVM2 nella directory /dev
necessari per attivare i volumi logici. Esso crea qualsiasi file speciale mancante e rimuove quelli non utilizzati.
vgmknodes
nel comando vgscan
, specificando l'argomento --mknodes
sul comando usato.
4.4. Amministrazione del volume logico Copia collegamentoCollegamento copiato negli appunti!
4.4.1. Creazione dei volume logico Copia collegamentoCollegamento copiato negli appunti!
lvcreate
. Sarà possibile creare volumi lineari, volumi striped e volumi speculari, come descritto nelle seguenti sottosezioni.
lvol#
, dove # è il numero interno del volume logico.
4.4.1.1. Creazione volumi lineari Copia collegamentoCollegamento copiato negli appunti!
vg1
.
lvcreate -L 10G vg1
lvcreate -L 10G vg1
testlv
nel gruppo di volume testvg
, creando il dispositivo a blocchi /dev/testvg/testlv
.
lvcreate -L1500 -n testlv testvg
lvcreate -L1500 -n testlv testvg
gfslv
dalle tre estensioni nel gruppo di volumi vg0
.
lvcreate -L 50G -n gfslv vg0
lvcreate -L 50G -n gfslv vg0
-l
del comando lvcreate
per specificare la dimensione in estensioni del volume logico. È possibile utilizzare questo argomento per specificare la percentuale del gruppo di volumi da utilizzare per il volume logico. Il seguente comando crea un volume logico chiamato mylv
, che utilizza il 60% dello spazio totale nel gruppo di volumi testvol
lvcreate -l 60%VG -n mylv testvg
lvcreate -l 60%VG -n mylv testvg
-l
del comando lvcreate
, per specificare la percentuale dello spazio libero restante in un gruppo di volumi come dimensione del volume logico. Il seguente comando crea un volume logico chiamato yourlv
, il quale utilizza tutto lo spazio non assegnato nel gruppo di volumi testvol
.
lvcreate -l 100%FREE -n yourlv testvg
lvcreate -l 100%FREE -n yourlv testvg
-l
argument of the lvcreate
command to create a logical volume that uses the entire volume group. Another way to create a logical volume that uses the entire volume group is to use the vgdisplay
command to find the "Total PE" size and to use those results as input to the the lvcreate
command.
mylv
in grado di riempire il gruppo di volumi chiamato testvg
.
vgdisplay testvg | grep "Total PE" lvcreate -l 10230 testvg -n mylv
# vgdisplay testvg | grep "Total PE"
Total PE 10230
# lvcreate -l 10230 testvg -n mylv
lvcreate
. Il seguente comando crea un logical volume chiamato testlv
nel gruppo di volumi testvg
, assegnato dal physical volume /dev/sdg1
,
lvcreate -L 1500 -ntestlv testvg /dev/sdg1
lvcreate -L 1500 -ntestlv testvg /dev/sdg1
/dev/sda1
, e dalle estensioni 50 fino a 125 del volume fisico/dev/sdb1
nel gruppo di volumi testvg
.
lvcreate -l 100 -n testlv testvg /dev/sda1:0-25 /dev/sdb1:50-125
lvcreate -l 100 -n testlv testvg /dev/sda1:0-25 /dev/sdb1:50-125
/dev/sda1
, continuando la creazione del volume logico dall'estensione 100.
lvcreate -l 100 -n testlv testvg /dev/sda1:0-25:100-
lvcreate -l 100 -n testlv testvg /dev/sda1:0-25:100-
inherit
, which applies the same policy as for the volume group. These policies can be changed using the lvchange
command. For information on allocation policies, see Sezione 4.3.1, «Creazione dei gruppi di volumi».
4.4.1.2. Creazione dei volumi striped Copia collegamentoCollegamento copiato negli appunti!
-i
del comando lvcreate
. Ciò determina su quanti volumi fisici il volume logico verrà scritto. Il numero di bande non può essere maggiore del numero di physical volume presenti nel gruppo di volumi (se l'argomento --alloc anywhere
non è stato utilizzato).
gfslv
, ed è ottenuto dal gruppo di volumi vg0
:
lvcreate -L 50G -i2 -I64 -n gfslv vg0
lvcreate -L 50G -i2 -I64 -n gfslv vg0
stripelv
, e si trova nel gruppo di volumi testvg
. La banda userà i settori 0-50 di /dev/sda1
ed i settori 50-100 di /dev/sdb1
.
lvcreate -l 100 -i2 -nstripelv testvg /dev/sda1:0-50 /dev/sdb1:50-100
# lvcreate -l 100 -i2 -nstripelv testvg /dev/sda1:0-50 /dev/sdb1:50-100
Using default stripesize 64.00 KB
Logical volume "stripelv" created
4.4.1.3. Creazione volumi speculari Copia collegamentoCollegamento copiato negli appunti!
-m
del comando lvcreate
. Se usate -m1
verrà creato un mirror, il quale da' luogo a due copie del file system: un volume logico lineare più una copia. Allo stesso modo, se specificate -m2
verranno creati due mirror, dando luogo a tre copie del file system.
mirrorlv
, e creato dal gruppo di volumi vg0
:
lvcreate -L 50G -m1 -n gfslv vg0
lvcreate -L 50G -m1 -n gfslv vg0
-R
. LVM mantiene un log molto piccolo usato per controllare quale regione è sincronizzata con i mirror. Per default il suddetto log viene conservato sul disco, mantenendolo uguale durante i vari processi di riavvio. Se desiderate mantenere il suddetto log all'interno della memoria, allora potrete utilizzare l'opzione --corelog
, ciò elimina la necessità di un dispositivo di log aggiuntivo, ma al tempo stesso avrà bisogno di una sincronizzazione dell'intero mirror ad ogni riavvio.
bigvg
. Il suddetto volume viene chiamato ondiskmirvol
e possiede un mirror singolo. Il volume è di 12MB e mantiene il log del mirror all'interno della memoria.
lvcreate -L 12MB -m1 --corelog -n ondiskmirvol bigvg
# lvcreate -L 12MB -m1 --corelog -n ondiskmirvol bigvg
Logical volume "ondiskmirvol" created
--alloc anywhere
del comando vgcreate
. Tale procedura potrebbe deteriorare le prestazioni, ma permette di creare un mirror anche se siete solo in possesso di due dispositivi.
mirrorlv
, e creato dal gruppo di volumi vg0
:
lvcreate -L 500M -m1 -n mirrorlv -alloc anywhere vg0
lvcreate -L 500M -m1 -n mirrorlv -alloc anywhere vg0
nosync
in modo da indicare che la sincronizzazione iniziale dal primo dispositivo non risulta necessaria.
mirrorlv
, ed è stato ottenuto dal gruppo di volumi vg0
. La prima gamba del mirror si trova sul dispositivo /dev/sda1
, la seconda sul dispositivo /dev/sdb1
, ed il log è su /dev/sdc1
.
lvcreate -L 500M -m1 -n mirrorlv vg0 /dev/sda1 /dev/sdb1 /dev/sdc1
lvcreate -L 500M -m1 -n mirrorlv vg0 /dev/sda1 /dev/sdb1 /dev/sdc1
mirrorlv
, ed è ottenuto dal gruppo di volumi vg0
. La prima gamba del mirror è posizionata sulle estensioni da 0 a 499 del dispositivo /dev/sda1
, la seconda gamba è posizionata sulle estensioni da 0 a 499 del dispositivo /dev/sdb1
, ed il log del mirror inizia sull'estensione 0 di /dev/sdc1
. Esse sono estensioni di 1MB. Se qualsiasi delle estensioni specificate è stata assegnata, essa verrà ignorata.
lvcreate -L 500M -m1 -n mirrorlv vg0 /dev/sda1:0-499 /dev/sdb1:0-499 /dev/sdc1:0
lvcreate -L 500M -m1 -n mirrorlv vg0 /dev/sda1:0-499 /dev/sdb1:0-499 /dev/sdc1:0
Nota
4.4.1.4. Come modificare la configurazione del volume speculare Copia collegamentoCollegamento copiato negli appunti!
lvconvert
. È possibile usare questo comando per riconfigurare altri parametri del mirror di un volume logico esistente, come ad esempio corelog
.
lvconvert
command to restore the mirror. This procedure is provided in Sezione 6.3, «Processo di recupero da un LVM Mirror Failure».
vg00/lvol1
in un volume logico speculare.
lvconvert -m1 vg00/lvol1
lvconvert -m1 vg00/lvol1
vg00/lvol1
in un volume logico lineare, rimuovendo la gamba del mirror.
lvconvert -m0 vg00/lvol1
lvconvert -m0 vg00/lvol1
4.4.2. Numeri del dispositivo persistenti Copia collegamentoCollegamento copiato negli appunti!
lvcreate
e lvchange
utilizzando i seguenti argomenti:
--persistent y --major major --minor minor
--persistent y --major major --minor minor
fsid
nel file di esportazione, potreste non aver bisongo d'impostare un numero del dispositivo persistente all'interno di LVM.
4.4.3. Modifica della dimensione dei logical volumes Copia collegamentoCollegamento copiato negli appunti!
lvreduce
. Se il volume logico contiene un file system, assicuratevi di ridurre prima il file system (o utilizzate la GUI di LVM), in modo che il volume logico abbia una dimensione uguale a quella prevista dal file system.
lvol1
nel gruppo di volumi vg00
, di 3 estensioni logiche.
lvreduce -l -3 vg00/lvol1
lvreduce -l -3 vg00/lvol1
4.4.4. Modifica dei parametri di un gruppo di volumi logici Copia collegamentoCollegamento copiato negli appunti!
lvchange
. Per un elenco di parametri modificabili consultate la man page di lvchange
(8).
lvchange
command to activate and deactivate logical volumes. To activate and deactivate all the logical volumes in a volume group at the same time, use the vgchange
command, as described in Sezione 4.3.7, «Modifica dei parametri di un gruppo di volumi».
lvol1
nel gruppo di volumi vg00
in sola lettura.
lvchange -pr vg00/lvol1
lvchange -pr vg00/lvol1
4.4.5. Modifica del nome dei volumi logici Copia collegamentoCollegamento copiato negli appunti!
lvrename
.
lvold
nel gruppo di volumi vg02
in lvnew
.
lvrename /dev/vg02/lvold /dev/vg02/lvnew
lvrename /dev/vg02/lvold /dev/vg02/lvnew
lvrename vg02 lvold lvnew
lvrename vg02 lvold lvnew
4.4.6. Rimozione dei volumi logici Copia collegamentoCollegamento copiato negli appunti!
lvremove
. Prima di poter eseguire la rimozione è necessario disattivare il volume logico con il comando umount
. In aggiunta, in un ambiente clusterizzato è necessario disattivare un volume logico prima di poterlo rimuovere.
/dev/testvg/testlv
dal gruppo di volumi testvg
. Da notare che in questo caso il volume logico non è stato disattivato.
lvremove /dev/testvg/testlv
[root@tng3-1 lvm]# lvremove /dev/testvg/testlv
Do you really want to remove active logical volume "testlv"? [y/n]: y
Logical volume "testlv" successfully removed
lvchange -an
, in questo caso non sarete in grado di visualizzare il prompt attraverso il quale potete verificare se rimuovere un volume logico attivo.
4.4.7. Visualizzazione dei volumi logici Copia collegamentoCollegamento copiato negli appunti!
lvs
, lvdisplay
, e lvscan
.
lvs
command provides logical volume information in a configurable form, displaying one line per logical volume. The lvs
command provides a great deal of format control, and is useful for scripting. For information on using the lvs
command to customize your output, see Sezione 4.9, «Personalizzazione dei riporti per LVM».
lvdisplay
mostra le proprietà del volume logico (come ad esempio dimensione, schema e mappatura) in un formato fisso.
lvol2
in vg00
. Se sono stati creati i volumi logici della snapshotper il volume logico originale in questione, il comando mostrerà un elenco di tutti i volumi logici della snapshot e del loro stato (attivo o inattivo).
lvdisplay -v /dev/vg00/lvol2
lvdisplay -v /dev/vg00/lvol2
lvscan
esegue la scansione di tutti i logical volume nel sistema elencondoli, in modo simile al seguente esempio.
lvscan
# lvscan
ACTIVE '/dev/vg0/gfslv' [1.46 GB] inherit
4.4.8. Come aumentare la dimensione dei volumi logici Copia collegamentoCollegamento copiato negli appunti!
lvextend
.
/dev/myvg/homevol
a 12 gigabyte.
lvextend -L12G /dev/myvg/homevol
# lvextend -L12G /dev/myvg/homevol
lvextend -- extending logical volume "/dev/myvg/homevol" to 12 GB
lvextend -- doing automatic backup of volume group "myvg"
lvextend -- logical volume "/dev/myvg/homevol" successfully extended
/dev/myvg/homevol
.
lvextend -L+1G /dev/myvg/homevol
# lvextend -L+1G /dev/myvg/homevol
lvextend -- extending logical volume "/dev/myvg/homevol" to 13 GB
lvextend -- doing automatic backup of volume group "myvg"
lvextend -- logical volume "/dev/myvg/homevol" successfully extended
lvcreate
, è possibile usare l'opzione -l
del comando lvextend
per specificare il numero di estensioni attraverso le quali aumentare la dimensione del volume logico. È possibile utilizzare questa opzione per specificare anche una percentuale del gruppo di volumi, o una percentuale di spazio libero disponibile nel gruppo di volumi. Il seguente comando estende il logical volume chiamato testlv
, in modo da usare tutto lo spazio non assegnato nel gruppo di volumi myvg
.
lvextend -l +100%FREE /dev/myvg/testlv
[root@tng3-1 ~]# lvextend -l +100%FREE /dev/myvg/testlv
Extending logical volume testlv to 68.59 GB
Logical volume testlv successfully resized
4.4.9. Come estendere un volume striped Copia collegamentoCollegamento copiato negli appunti!
vg
il quale consiste in due physical volume, come mostrato dal seguente comando vgs
.
vgs
# vgs
VG #PV #LV #SN Attr VSize VFree
vg 2 0 0 wz--n- 271.31G 271.31G
vgs
# vgs
VG #PV #LV #SN Attr VSize VFree
vg 2 1 0 wz--n- 271.31G 0
lvextend
iniziale.
4.4.10. Come ridurre le dimensione dei volumi logici Copia collegamentoCollegamento copiato negli appunti!
lvreduce
per ridurre il volume. Dopo aver ridotto il volume, rimontate il file system.
Avvertimento
lvol1
nel gruppo di volume vg00
, viene ridotta di 3 estensioni logiche.
lvreduce -l -3 vg00/lvol1
lvreduce -l -3 vg00/lvol1
4.5. Creazione dei volumi della snapshot Copia collegamentoCollegamento copiato negli appunti!
-s
del comando lvcreate
per creare un volume della snapshot. Il suddetto volume è modificabile.
Nota
/dev/vg00/snap
. Ciò creerà una snapshot del volume logico dell'origine chiamata /dev/vg00/lvol1
. Se il volume logico originale contiene un file system, allora sarà possibile montare il volume logico della snapshot su di una directory arbitraria, in modo da accedere ai contenuti del file system ed eseguire il backup durante l'aggiornamento del file system.
lvcreate --size 100M --snapshot --name snap /dev/vg00/lvol1
lvcreate --size 100M --snapshot --name snap /dev/vg00/lvol1
lvdisplay
dà luogo ad un output il quale include un elenco di tutti i logical volume della snapshot e del rispettivo stato (attivo o inattivo).
/dev/new_vg/lvol0
, per il quale è stato creato un volume della snapshot /dev/new_vg/newvgsnap
.
lvs
visualizza il volume d'origine e la percentuale corrente usata del volume della snapshot. Il seguente esempio mostra l'output predefinito per il comando lvs
per un sistema che include il volume logico /dev/new_vg/lvol0
, per il quale è stato creato un volume della snapshot /dev/new_vg/newvgsnap
.
lvs
# lvs
LV VG Attr LSize Origin Snap% Move Log Copy%
lvol0 new_vg owi-a- 52.00M
newvgsnap1 new_vg swi-a- 8.00M lvol0 0.20
Nota
lvs
in modo da assicurarsi che non venga del tutto utilizzata. Una snapshot utilizzata al 100% viene completamente persa, poichè il processo di scrittura su sezioni non modificate dell'origine non andrà a buon fine, in caso contrario verrà corrotta la snapshot.
4.6. Controllo delle scansioni del dispositivo LVM con i filtri Copia collegamentoCollegamento copiato negli appunti!
vgscan
esegue la scansione dei dispositivi a blocchi sul sistema, andando alla ricerca di etichette LVM per determinare i physical volume, leggere i metadata, e creare un elenco di gruppi di volumi. I nomi dei physical volume sono conservati nel file di cache di ogni nodo nel sistema, /etc/lvm/.cache
. I comandi che ne seguono possono leggere il file in modo da evitarne successive scansioni.
lvm.conf
. I filtri consistono in una serie di espressioni regolari semplici, applicate ai nomi del dispositivo nella directory /dev
, per decidere se accettare o rifiutare ogni dispositivo a blocchi trovato.
a/loop/
è equivalente a a/.*loop.*/
e corrisponderebbe a /dev/solooperation/lvol1
.
filter = [ "a/.*/" ]
filter = [ "a/.*/" ]
filter = [ "r|/dev/cdrom|" ]
filter = [ "r|/dev/cdrom|" ]
filter = [ "a/loop.*/", "r/.*/" ]
filter = [ "a/loop.*/", "r/.*/" ]
filter =[ "a|loop.*|", "a|/dev/hd.*|", "r|.*|" ]
filter =[ "a|loop.*|", "a|/dev/hd.*|", "r|.*|" ]
filter = [ "a|^/dev/hda8$|", "r/.*/" ]
filter = [ "a|^/dev/hda8$|", "r/.*/" ]
lvm.conf
file, see Appendice B, File di configurazione di LVM and the lvm.conf
(5) man page.
4.7. Riassegnazione dati online Copia collegamentoCollegamento copiato negli appunti!
pvmove
.
pvmove
divide i dati da spostare in sezioni, e crea un mirror provvisorio per poter muovere ogni sezione. Per maggiori informazioni sul funzionamento di pvmove
, consultate la pagina man di pvmove
(8).
pvmove
command uses mirroring, it is not cluster-aware and needs exclusive access to a volume. For information on activating logical volumes on individual nodes in a cluster, see Sezione 4.8, «Attivazione dei volumi logici su nodi individuali in un cluster».
/dev/sdc1
ad altri physical volume presenti nel gruppo di volumi:
pvmove /dev/sdc1
pvmove /dev/sdc1
MyLV
.
pvmove -n MyLV /dev/sdc1
pvmove -n MyLV /dev/sdc1
pvmove
potrebbe richiedere molto tempo, è consigliato eseguirlo nel background in modo da evitare la visualizzazione del progresso degli aggiornamenti. Il seguente comando sposta tutte le estensioni assegnate al physical volume /dev/sdc1
su /dev/sdf1
nel background.
pvmove -b /dev/sdc1 /dev/sdf1
pvmove -b /dev/sdc1 /dev/sdf1
pvmove -i5 /dev/sdd1
pvmove -i5 /dev/sdd1
4.8. Attivazione dei volumi logici su nodi individuali in un cluster Copia collegamentoCollegamento copiato negli appunti!
pvmove
non è cluster-aware e ha bisogno di un accesso esclusivo ad un volume. Anche le snapshot di LVM richiedono un accesso esclusivo ad un volume.
lvchange -aey
. Alternativamente, potrete utilizzare lvchange -aly
per attivare i volumi logici solo, ma non esclusivamente, sul nodo locale. Successivamente potrete attivarli simultaneamente su nodi aggiuntivi.
4.9. Personalizzazione dei riporti per LVM Copia collegamentoCollegamento copiato negli appunti!
pvs
, lvs
, e vgs
. I riporti generati da questi comandi includono un output di una sola riga per ogni oggetto. Ogni riga contiene un elenco ordinato di campi relativi alle proprietà dell'oggetto. È possibile selezionare gli oggetti da riportare in cinque modi diversi: attraverso il volume fisico, il gruppo di volumi, volume logico, il segmento del volume fisico ed il segmento del volume logico.
- Un sommario degli argomenti del comando utilizzabili per controllare il formato del riporto generato.
- Un elenco dei campi selezionabili per ogni oggetto LVM.
- Un sommario degli argomenti del comando utilizzabili per ordinare il riporto generato.
- Le informazioni su come specificare le unità dell'output del riporto.
4.9.1. Controllo del formato Copia collegamentoCollegamento copiato negli appunti!
pvs
, lvs
, o vgs
determinerete il set predefinito dei campi visualizzati ed il tipo di ordine da seguire. Potrete controllare l'output dei suddetti comandi con i seguenti argomenti:
- Sarete in grado di modificare i campi visualizzati in modo da avere una selezione diversa dall'impostazione predefinita utilizzando l'opzione
-o
. Per esempio, il seguente output è il display predefinito per il comandopvs
(il quale mostra le informazioni sui physcial volume).Copy to Clipboard Copied! Toggle word wrap Toggle overflow È possibile visualizzare solo la dimensione ed il nome del physical volume con il seguente comando.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - È possibile aggiungere un campo all'output utilizzando il segno più (+); il suddetto segno viene usato in combinazione con l'opzione -o.Il seguente esempio mostra l'UUID del physical volume insieme ai campi predefiniti.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Aggiungendo l'opzione
-v
ad un comando, includerete alcuni campi aggiuntivi. Per esempio, il comandopvs -v
mostrerà i campiDevSize
ePV UUID
insieme ai campi predefiniti.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - L'opzione
--noheadings
rimuove la riga delle intestazioni. Ciò può essere utile per la scrittura di script.Il seguente esempio utilizza l'opzione--noheadings
insieme apv_name
, generando un elenco di tutti i physical volume.pvs --noheadings -o pv_name
# pvs --noheadings -o pv_name /dev/sdb1 /dev/sdc1 /dev/sdd1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - L'opzione
--separator separator
utilizza separator per separare ogni campo. Ciò può essere utile in uno script se state eseguendogrep
per l'output.Il seguente esempio separa i campi predefiniti per l'output dipvs
con il segno uguale (=).Copy to Clipboard Copied! Toggle word wrap Toggle overflow Per mantenere i campi allineati durante l'utilizzo delseparator
, utilizzate l'opzioneseparator
insieme con--aligned
.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-P
argument of the lvs
or vgs
command to display information about a failed volume that would otherwise not appear in the output. For information on the output this argument yields, see Sezione 6.2, «Come visualizzare le informazioni su dispositivi falliti».
pvs
(8), vgs
(8) e lvs
(8).
4.9.2. Selezione dell'oggetto Copia collegamentoCollegamento copiato negli appunti!
pvs
, vgs
, e lvs
.
pvs
, name
significa pv_name
, mentre con il comando vgs
, name
viene interpretato come vg_name
.
pvs -o pv_free
.
Il comando pvs Copia collegamentoCollegamento copiato negli appunti!
pvs
command, along with the field name as it appears in the header display and a description of the field.
Opzione | Intestazione | Descrizione |
---|---|---|
dev_size | DevSize | Misura del dispositivo sul quale è stato creato il physical volume |
pe_start | 1st PE | L'offset all'inizio della prima estensione fisica del dispositivo interessato |
pv_attr | Attr | Stato del physical volume: (a)ssegnabile o e(s)portato |
pv_fmt | Fmt | Il formato dei metadata del physical volume (lvm2 o lvm1 ) |
pv_free | PFree | Lo spazio libero restante sul physical volume |
pv_name | PV | Il nome del physical volume |
pv_pe_alloc_count | Alloc | Numero di estensioni fisiche usate |
pv_pe_count | PE | Numero di estensioni fisiche |
pvseg_size | SSize | La dimensione del segmento del physical volume |
pvseg_start | Start | L'estensione fisica iniziale del segmento del physical volume |
pv_size | PSize | La dimensione del physical volume |
pv_tags | PV Tags | Le etichette di LVM relative al physical volume |
pv_used | Used | La quantità di spazio attualmente usato sul physical volume |
pv_uuid | PV UUID | L'UUID del physical volume |
pvs
mostra per default i seguenti campi: pv_name
, vg_name
, pv_fmt
, pv_attr
, pv_size
, pv_free
. L'ordine seguito viene indicato dall'opzione pv_name
.
-v
con il comando pvs
, aggiungerete i seguenti campi al display predefinito: dev_size
, pv_uuid
.
--segments
del comando pvs
, per visualizzare le informazioni su ogni segmento del physical volume. Un segmento è rappresentato da un gruppo di estensioni. Una vista del segmento può essere utile per controllare se il vostro volume logico è frammentato.
pvs --segments
mostra per default i seguenti campi: pv_name
, vg_name
, pv_fmt
, pv_attr
, pv_size
, pv_free
, pvseg_start
, pvseg_size
. L'elenco è ordinato in base al pv_name
e pvseg_size
all'interno del physical volume.
pvs -a
.
Il comando vgs Copia collegamentoCollegamento copiato negli appunti!
vgs
command, along with the field name as it appears in the header display and a description of the field.
Opzione | Intestazione | Descrizione |
---|---|---|
lv_count | #LV | Il numero di volumi logici contenuti nel gruppo di volumi |
max_lv | MaxLV | Il numero massimo di volumi logici permessi nel gruppo di volumi (0 se illimitato) |
max_pv | MaxPV | Il numero massimo di physical volume permessi nel gruppo di volumi (0 se illimitato) |
pv_count | #PV | Il numero di physical volume che definisce il gruppo di volumi |
snap_count | #SN | Il numero di snapshot contenute nel gruppo di volumi |
vg_attr | Attr | Stato del gruppo di volumi: (w)riteable, (r)eadonly, resi(z)eable, e(x)ported, (p)artial e (c)lustered. |
vg_extent_count | #Ext | Il numero di estensioni fisiche nel gruppo di volumi |
vg_extent_size | Ext | La dimensione delle estensioni fisiche nel gruppo di volumi |
vg_fmt | Fmt | Il formato dei metadata del gruppo di volumi (lvm2 o lvm1 ) |
vg_free | VFree | La dimensione dello spazio libero restante nel gruppo di volumi |
vg_free_count | Free | Il numero di estensioni fisiche libere presenti nel gruppo di volumi |
vg_name | VG | Il nome del gruppo di volumi |
vg_seqno | Seq | Il numero che rappresenta la revisione del gruppo di volumi |
vg_size | VSize | La dimensione del gruppo di volumi |
vg_sysid | SYS ID | ID del sistema LVM1 |
vg_tags | VG Tags | Le etichette di LVM relative al gruppo di volumi |
vg_uuid | VG UUID | L'UUID del gruppo di volumi |
vgs
visualizza per default i seguenti campi: vg_name
, pv_count
, lv_count
, snap_count
, vg_attr
, vg_size
, vg_free
. L'elenco viene ordinato in base al vg_name
.
vgs
# vgs
VG #PV #LV #SN Attr VSize VFree
new_vg 3 1 1 wz--n- 51.42G 51.36G
-v
del comando vgs
, verranno aggiunti all'impostazione predefinita i seguenti campi: vg_extent_size
, vg_uuid
.
Il comando lvs Copia collegamentoCollegamento copiato negli appunti!
lvs
command, along with the field name as it appears in the header display and a description of the field.
Opzione | Intestazione | Descrizione | ||||||
---|---|---|---|---|---|---|---|---|
| Chunk | Dimensione unità in un volume della snapshot | ||||||
copy_percent | Copy% | La percentuale di sincronizzazione di un volume logico speculare; usato anche quando le estensioni fisiche vengono spostate con il comando pv_move | ||||||
devices | Dispositivi | I dispositivi che costituiscono il volume logico: i volumi fisici, volumi logici, e le estensioni fisiche e logiche iniziali | ||||||
lv_attr | Attr | Stato del volume logico. Di seguito vengono riportati i bit per l'attributo del volume logico:
| ||||||
lv_kernel_major | KMaj | Numero maggiore del dispositivo del volume logico (-1 se inattivo) | ||||||
lv_kernel_minor | KMIN | Numero minore del dispositivo del volume logico (-1 se inattivo) | ||||||
lv_major | Maj | Il numero maggiore persistente del dispositivo del volume logico (-1 se non specificato) | ||||||
lv_minor | Min | Il numero minore persistente del dispositivo del volume logico (-1 se non specificato) | ||||||
lv_name | LV | Il nome del volume logico | ||||||
lv_size | LSize | La dimensione del volume logico | ||||||
lv_tags | LV Tags | Le etichette di LVM relative al volume logico | ||||||
lv_uuid | LV UUID | L'UUID del volume logico. | ||||||
mirror_log | Log | Dispositivo nel quale risiede il log del mirror | ||||||
modules | Moduli | Il target device-mapper del kernel corrispondente necessario per utilizzare questo volume logico | ||||||
move_pv | Move | physical volume sorgente di un volume logico provvisorio creato con il comando pvmove | ||||||
origin | Origine | Il dispositivo d'origine di un volume della snapshot | ||||||
| Regione | La dimensione dell'unità di un volume logico speculare | ||||||
seg_count | #Seg | Il numero di segmenti nel volume logico | ||||||
seg_size | SSize | La dimensione dei segmenti nel volume logico | ||||||
seg_start | Start | L'offset del segmento nel volume logico | ||||||
seg_tags | Seg Tags | Le etichette di LVM relative ai segmenti del volume logico | ||||||
segtype | Tipo | IL tipo di segmento di un volume logico (per esempio: mirror, striped, lineare) | ||||||
snap_percent | Snap% | Percentuale corrente del volume della snapshot in uso | ||||||
stripes | #Str | Numero di bande o mirror in un volume logico | ||||||
| Banda | Dimensione dell'unità della banda in un volume logico striped |
lvs
mostra per default i seguenti campi: lv_name
, vg_name
, lv_attr
, lv_size
, origin
, snap_percent
, move_pv
, mirror_log
, copy_percent
. L'elenco viene visualizzato in base al vg_name
e lv_name
all'interno del gruppo di volumi.
lvs
# lvs
LV VG Attr LSize Origin Snap% Move Log Copy%
lvol0 new_vg owi-a- 52.00M
newvgsnap1 new_vg swi-a- 8.00M lvol0 0.20
-v
con il comando lvs
aggiungerete i seguenti campi all'impostazione predefinita: seg_count
, lv_major
, lv_minor
, lv_kernel_major
, lv_kernel_minor
, lv_uuid
.
--segments
del comando lvs
. Quando utilizzate l'opzione segments
il prefisso seg
diventa facoltativo. Il comando lvs --segments
mostra per default i seguenti campi: lv_name
, vg_name
, lv_attr
, stripes
, segtype
, seg_size
. Il display predefinito viene visualizzato in base al vg_name
, lv_name
all'interno del gruppo di volumi, e seg_start
all'interno del volume logico. Se i logical volume sono frammentati, l'output del suddetto comando sarà in grado di mostrarlo.
-v
con il comando lvs --segments
aggiungerete i seguenti campi al display predefinito: seg_start
, stripesize
, chunksize
.
lvs
su di un sistema con un volume logico configurato, seguito dall'output predefinito di lvs
con segments
specificato.
4.9.3. Come ordinare i riporti di LVM Copia collegamentoCollegamento copiato negli appunti!
lvs
, vgs
, o pvs
deve essere generato e conservato internamente prima di poterlo ordinare, ed eseguire un allineamento corretto delle colonne. Specificate l'opzione --unbuffered
per visualizzare gli output non ordinati appena generati.
-O
di uno qualsiasi dei comandi usati per il riporto. Non è necessario includere questi campi all'interno dell'output.
pvs
il quale mostra il nome, la dimensione e lo spazio disponibile del physical volume.
-
subito dopo il campo che contiene l'opzione -O
.
4.9.4. Come specificare le unità Copia collegamentoCollegamento copiato negli appunti!
--units
del comando di riporto. È possibile specificare (b)ytes, (k)ilobytes, (m)egabytes, (g)igabytes, (t)erabytes, (e)xabytes, (p)etabytes, e (h)uman-readable. L'impostazione predefinita è human-readable. Potrete sovrascrivere l'impostazione predefinita impostando il parametro units
nella sezione global
del file lvm.conf
.
pvs
in megabyte e non in gigabytea.
pvs
come un numero di settori.
pvs
in unità di 4 megabyte.
Capitolo 5. Esempi di configurazione LVM Copia collegamentoCollegamento copiato negli appunti!
5.1. Creazione di un volume logico LVM su tre dischi Copia collegamentoCollegamento copiato negli appunti!
new_logical_volume
il quale consiste nei dischi /dev/sda1
, /dev/sdb1
, e /dev/sdc1
5.1.1. Creazione dei physical volume Copia collegamentoCollegamento copiato negli appunti!
Avvertimento
/dev/sda1
, /dev/sdb1
, e /dev/sdc1
.
pvcreate /dev/sda1 /dev/sdb1 /dev/sdc1
[root@tng3-1 ~]# pvcreate /dev/sda1 /dev/sdb1 /dev/sdc1
Physical volume "/dev/sda1" successfully created
Physical volume "/dev/sdb1" successfully created
Physical volume "/dev/sdc1" successfully created
5.1.2. Creazione del gruppo di volumi Copia collegamentoCollegamento copiato negli appunti!
new_vol_group
.
vgcreate new_vol_group /dev/sda1 /dev/sdb1 /dev/sdc1
[root@tng3-1 ~]# vgcreate new_vol_group /dev/sda1 /dev/sdb1 /dev/sdc1
Volume group "new_vol_group" successfully created
vgs
per visualizzare gli attributi del nuovo gruppo di volumi.
vgs
[root@tng3-1 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
new_vol_group 3 0 0 wz--n- 51.45G 51.45G
5.1.3. Creazione del volume logico Copia collegamentoCollegamento copiato negli appunti!
new_logical_volume
dal gruppo di volumi new_vol_group
. In questo esempio viene creato un volume logico che utilizza 2 GB del gruppo di volumi.
lvcreate -L2G -n new_logical_volume new_vol_group
[root@tng3-1 ~]# lvcreate -L2G -n new_logical_volume new_vol_group
Logical volume "new_logical_volume" created
5.1.4. Creazione del file system Copia collegamentoCollegamento copiato negli appunti!
5.2. Creazione di un volume logico Striped Copia collegamentoCollegamento copiato negli appunti!
striped_logical_volume
il quale scrive i dati attraverso i dischi su /dev/sda1
, /dev/sdb1
, e /dev/sdc1
.
5.2.1. Creazione dei physical volume Copia collegamentoCollegamento copiato negli appunti!
Avvertimento
/dev/sda1
, /dev/sdb1
, e /dev/sdc1
.
pvcreate /dev/sda1 /dev/sdb1 /dev/sdc1
[root@tng3-1 ~]# pvcreate /dev/sda1 /dev/sdb1 /dev/sdc1
Physical volume "/dev/sda1" successfully created
Physical volume "/dev/sdb1" successfully created
Physical volume "/dev/sdc1" successfully created
5.2.2. Creazione del gruppo di volumi Copia collegamentoCollegamento copiato negli appunti!
striped_vol_group
.
vgcreate striped_vol_group /dev/sda1 /dev/sdb1 /dev/sdc1
[root@tng3-1 ~]# vgcreate striped_vol_group /dev/sda1 /dev/sdb1 /dev/sdc1
Volume group "striped_vol_group" successfully created
vgs
per visualizzare gli attributi del nuovo gruppo di volumi.
vgs
[root@tng3-1 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
striped_vol_group 3 0 0 wz--n- 51.45G 51.45G
5.2.3. Creazione del volume logico Copia collegamentoCollegamento copiato negli appunti!
striped_logical_volume
dal gruppo di volumi striped_vol_group
. In questo esempio viene creato un volume logico con una misura di 2 gigabyte, con tre bande con una dimensione di 4 kilobyte l'una.
lvcreate -i3 -I4 -L2G -nstriped_logical_volume striped_vol_group
[root@tng3-1 ~]# lvcreate -i3 -I4 -L2G -nstriped_logical_volume striped_vol_group
Rounding size (512 extents) up to stripe boundary size (513 extents)
Logical volume "striped_logical_volume" created
5.2.4. Creazione del file system Copia collegamentoCollegamento copiato negli appunti!
5.3. Separazione di un gruppo di volumi Copia collegamentoCollegamento copiato negli appunti!
mylv
viene ottenuto dal gruppo di volumi myvol
, il quale a sua volta consiste di tre physical volume, /dev/sda1
, /dev/sdb1
, e /dev/sdc1
.
myvg
consisterà in /dev/sda1
e /dev/sdb1
. Un secondo gruppo di volumi, yourvg
, consisterà in /dev/sdc1
.
5.3.1. Come determinare lo spazio disponibile Copia collegamentoCollegamento copiato negli appunti!
pvscan
.
5.3.2. Come spostare i dati Copia collegamentoCollegamento copiato negli appunti!
/dev/sdc1
su /dev/sdb1
tramite pvmove
. pvmove
può richiedere un periodo molto lungo per la sua esecuzione.
/dev/sdc1
è ora disponibile.
5.3.3. Come dividere il gruppo di volumi Copia collegamentoCollegamento copiato negli appunti!
yourvg
, utilizzate il comando vgsplit
per dividere il gruppo di volumi myvg
.
lvchange
o vgchange
. Il seguente comando rende inattivo il volume logico mylv
, e successivamente divide il gruppo di volumi yourvg
dal gruppo di volumi myvg
, spostando il physical volume /dev/sdc1
nel nuovo gruppo di volumi yourvg
.
lvchange -a n /dev/myvg/mylv vgsplit myvg yourvg /dev/sdc1
[root@tng3-1 ~]# lvchange -a n /dev/myvg/mylv
[root@tng3-1 ~]# vgsplit myvg yourvg /dev/sdc1
Volume group "yourvg" successfully split from "myvg"
vgs
per visualizzare gli attributi dei due gruppi di volumi.
vgs
[root@tng3-1 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
myvg 2 1 0 wz--n- 34.30G 10.80G
yourvg 1 0 0 wz--n- 17.15G 17.15G
5.3.4. Creazione di un nuovo volume logico Copia collegamentoCollegamento copiato negli appunti!
yourlv
.
lvcreate -L5G -n yourlv yourvg
[root@tng3-1 ~]# lvcreate -L5G -n yourlv yourvg
Logical volume "yourlv" created
5.3.5. Creazione di un file system e montaggio di un nuovo volume logico Copia collegamentoCollegamento copiato negli appunti!
5.3.6. Attivazione e montaggio del volume logico originale Copia collegamentoCollegamento copiato negli appunti!
mylv
, sarà necessario riattivarlo prima di poterlo montare.
5.4. Rimozione di un disco da un volume logico Copia collegamentoCollegamento copiato negli appunti!
5.4.1. Come spostare le estensioni su physical volume esistenti Copia collegamentoCollegamento copiato negli appunti!
myvg
.
/dev/sdb1
in modo da poter rimuoverlo dal gruppo di volumi.
pvmove
senza alcuna opzione sul dispositivo che desiderate rimuovere, così facendo le estensioni verranno distribuite su altri disposiviti.
pvmove
, la distribuzione delle estensioni risulta essere:
vgreduce
per rimuovere il physical volume /dev/sdb1
dal gruppo di volumi.
5.4.2. Come spostare le estensioni su di un nuovo disco Copia collegamentoCollegamento copiato negli appunti!
myvg
nel modo seguente:
/dev/sdb1>
su di un nuovo dispositivo, /dev/sdd1
.
5.4.2.1. Creazione di un nuovo Physical Volume Copia collegamentoCollegamento copiato negli appunti!
/dev/sdd1
.
pvcreate /dev/sdd1
[root@tng3-1 ~]# pvcreate /dev/sdd1
Physical volume "/dev/sdd1" successfully created
5.4.2.2. Aggiungete il nuovo Physical Volume al gruppo di volumi Copia collegamentoCollegamento copiato negli appunti!
/dev/sdd1
sul gruppo di volumi esistente myvg
.
5.4.2.3. Come spostare i dati Copia collegamentoCollegamento copiato negli appunti!
pvmove
per spostare i dati da /dev/sdb1
a /dev/sdd1
.
5.4.2.4. Rimozione del Physical Volume vecchio dal gruppo di volumi Copia collegamentoCollegamento copiato negli appunti!
/dev/sdb1
, potrete eseguire la sua rimozione dal gruppo di volumi.
vgreduce myvg /dev/sdb1
[root@tng3-1 ~]# vgreduce myvg /dev/sdb1
Removed "/dev/sdb1" from volume group "myvg"
Capitolo 6. Troubleshooting LVM Copia collegamentoCollegamento copiato negli appunti!
6.1. Informazioni diagnostiche per il troubleshooting Copia collegamentoCollegamento copiato negli appunti!
- Utilizzate le opzioni
-v
,-vv
,-vvv
, o-vvvv
di qualsiasi comando, per livelli sempre più verbosi dell'output. - If the problem is related to the logical volume activation, set 'activation = 1' in the 'log' section of the configuration file and run the command with the
-vvvv
argument. After you have finished examining this output be sure to reset this parameter to 0, to avoid possible problems with the machine locking during low memory situations. - Eseguite il comando
lvmdump
il quale fornisce le informazioni relative al dump per scopi diagnostici. Per informazioni consultate la pagina man (8) dilvmdump
. - Eseguite il comando
lvs -v
,pvs -a
odmsetup info -c
per informazioni aggiuntive del sistema. - Esaminate l'ultimo backup dei metadata in
/etc/lvm/backup
e le versioni archiviate in/etc/lvm/archive
. - Controllate le informazioni correnti sulla configurazione, eseguendo il comando
lvm dumpconfig
. - Controllate il file
.cache
in/etc/lvm
per informazioni relative a quale dispositivo possiede i physical volume.
6.2. Come visualizzare le informazioni su dispositivi falliti Copia collegamentoCollegamento copiato negli appunti!
-P
del comando lvs
o vgs
, per visualizzare le informazioni sul volume fallito che potrebbero non apparire all'interno dell'output. Questa opzione permette alcune operazioni anche se i metadata non sono completamente uguali all'interno. Per esempio, se uno dei dispositivi che compone il gruppo di volumi vg
fallisce, il comando vgs
potrebbe mostrare il seguente output.
vgs -o +devices
[root@link-07 tmp]# vgs -o +devices
Volume group "vg" not found
-P
di vgs
, il gruppo di volumi risulta essere ancora non utilizzabile, ma sarete in grado di visualizzare maggiori informazioni sul dispositivo fallito.
lvs
senza l'opzione -P
mostra il seguente output.
lvs -a -o +devices
[root@link-07 tmp]# lvs -a -o +devices
Volume group "vg" not found
-P
visualizzerete i volumi logici falliti.
pvs
e lvs
con l'opzione -P
specificata quando una parte del volume logico speculare è fallita.
6.3. Processo di recupero da un LVM Mirror Failure Copia collegamentoCollegamento copiato negli appunti!
vg
ed i volumi speculari groupfs
.
lvs
per verificare la disposizione del volume speculare, e dei dispositivi relativi alla parte del mirror e del log. Da notare che nel primo esempio il mirror non è ancora completamente sincronizzato; dovreste attendere fino a quando il campo Copy%
mostra il valore 100.00 prima di continuare.
/dev/sda1
fallisce. Ogni attività di scrittura sul volume speculare, causa il rilevamento da parte di LVM del mirror fallito. Quando ciò accade, LVM converte il mirror in un volume lineare singolo. In questo caso per attivare la conversione, verrà eseguito un comando dd
dd if=/dev/zero of=/dev/vg/groupfs count=10
[root@link-08 ~]# dd if=/dev/zero of=/dev/vg/groupfs count=10
10+0 records in
10+0 records out
lvs
per verificare che il dispositivo risulta essere un dispositivo lineare. A causa del disco fallito si verificheranno errori I/O.
pvcreate
command.
lvconvert -m 1 /dev/vg/groupfs /dev/sda1 /dev/sdb1 /dev/sdc1
[root@link-08 ~]# lvconvert -m 1 /dev/vg/groupfs /dev/sda1 /dev/sdb1 /dev/sdc1
Logical volume mirror converted.
lvs
per verificare che il mirror sia stato ripristinato.
6.4. Recupero dei metadata del Physical Volume Copia collegamentoCollegamento copiato negli appunti!
Avvertimento
/etc/lvm/archive
. Verificate il file VolumeGroupName_xxxx.vg
per gli ultimi metadata di LVM validi archiviati, per quel gruppo di volumi.
partial
(-P
), potrebbe permettervi di trovare l'UUID del physical volume corrotto mancante.
--uuid
e --restorefile
di pvcreate
per ripristinare il physical volume. Il seguente esempio etichetta il dispositivo /dev/sdh1
come physical volume con il seguente UUID, FmGRh3-zhok-iVI8-7qTD-S5BI-MAEN-NYM5Sk
. Questo comando ripristina le informazioni relative ai metadata con contenuti VG_00050.vg
, il più recente metadata corretto archiviato per il gruppo di volumi
. L'opzione restorefile
indica al comando pvcreate
di rendere il nuovo physical volume compatibile con quello vecchio presente sul gruppo di volumi, assicurando che la nuova versione dei metadata non venga posizionata dove il physical volume precedente conteneva i dati (tale comportamento si potrebbe verificare se per esempio, il comando pvcreate
originale avesse usato gli argomenti della linea di comando per controllare il posizionamento dei metadata, o se il physical volume fosse stato creato originariamente utilizando una versione diversa di software che utilizza impostazioni predefinite differenti).Il comando pvcreate
sovrascrive solo le aree dei metadata di LVM e non interessa le aree dei dati esistenti.
pvcreate --uuid "FmGRh3-zhok-iVI8-7qTD-S5BI-MAEN-NYM5Sk" --restorefile /etc/lvm/archive/VG_00050.vg /dev/sdh1
[root@link-07 backup]# pvcreate --uuid "FmGRh3-zhok-iVI8-7qTD-S5BI-MAEN-NYM5Sk" --restorefile /etc/lvm/archive/VG_00050.vg /dev/sdh1
Physical volume "/dev/sdh1" successfully created
vgcfgrestore
command to restore the volume group's metadata.
vgcfgrestore VG
[root@link-07 backup]# vgcfgrestore VG
Restored volume group VG
lvs -a -o +devices
[root@link-07 backup]# lvs -a -o +devices
LV VG Attr LSize Origin Snap% Move Log Copy% Devices
stripe VG -wi--- 300.00G /dev/sdh1 (0),/dev/sda1(0)
stripe VG -wi--- 300.00G /dev/sdh1 (34728),/dev/sdb1(0)
fsck
.
6.5. Sostituzione di un Physical Volume mancante Copia collegamentoCollegamento copiato negli appunti!
--partial
and --verbose
arguments of the vgdisplay
command to display the UUIDs and sizes of any physical volumes that are no longer present. If you wish to substitute another physical volume of the same size, you can use the pvcreate
command with the --restorefile
and --uuid
arguments to initialize a new device with the same UUID as the missing physical volume. You can then use the vgcfgrestore
command to restore the volume group's metadata.
6.6. Rimozione dei physical volume persi da un gruppo di volumi Copia collegamentoCollegamento copiato negli appunti!
--partial
del comando vgchange
. È possibile rimuovere tutti i volumi logici che utilizzano il volume fisico dal gruppo di volumi tramite l'opzione --removemissing
del comando vgreduce
.
vgreduce
con l'opzione --test
, per verificare ciò che state eliminando.
vgreduce
è reversibile, ciò significa che è possibile utilizzare immediatamente il comando vgcfgrestore
, per ripristinare i metadata del gruppo di volumi al loro stato precedente. Per esempio, se avete usato l'opzione --removemissing
del comando vgreduce
senza l'opzione --test
, e se avete rimosso i volumi logici che desideravate mantenere, sarà ancora possibile sostituire il physical volume ed utilizzare un altro comando vgcfgrestore
, per ritornare lo stato del gruppo di volumi al suo stato precedente.
6.7. Estensioni disponibili insufficienti per un volume logico Copia collegamentoCollegamento copiato negli appunti!
vgdisplay
or vgs
commands. This is because these commands round figures to 2 decimal places to provide human-readable output. To specify exact size, use free physical extent count instead of some multiple of bytes to determine the size of the logical volume.
vgdisplay
per default include questa riga la quale indica le estensioni fisiche disponibili.
vgdisplay
# vgdisplay
--- Volume group ---
...
Free PE / Size 8780 / 34.30 GB
vg_free_count
e vg_extent_count
di vgs
, per visualizzare le estensioni disponibili ed il numero totale di estensioni.
vgs -o +vg_free_count,vg_extent_count
[root@tng3-1 ~]# vgs -o +vg_free_count,vg_extent_count
VG #PV #LV #SN Attr VSize VFree Free #Ext
testvg 2 0 0 wz--n- 34.30G 34.30G 8780 8780
lvcreate -l8780 -n testlv testvg
# lvcreate -l8780 -n testlv testvg
vgs -o +vg_free_count,vg_extent_count
# vgs -o +vg_free_count,vg_extent_count
VG #PV #LV #SN Attr VSize VFree Free #Ext
testvg 2 1 0 wz--n- 34.30G 0 0 8780
-l
argument of the lvcreate
command. For information, see Sezione 4.4.1.1, «Creazione volumi lineari».
Capitolo 7. Amministrazione di LVM con la GUI di LVM Copia collegamentoCollegamento copiato negli appunti!
system-config-lvm
. Il capitolo di LVM della Red Hat Enterprise Linux Deployment Guide fornisce le informazioni utili passo-dopo-passo, su come configurare un volume logico LVM utilizzando questa utilità.
Appendice A. Device Mapper Copia collegamentoCollegamento copiato negli appunti!
dmraid
utilizzano il Device Mapper. L'interfaccia dell'applicazione per il Device Mapper è la chiamata del sistema ioctl
. L'interfaccia utente è il comando dmsetup
.
dmsetup
command. For information about the format of devices in a mapping table, see Sezione A.1, «Tabella di mappatura del dispositivo». For information about using the dmsetup
command to query a device, see Sezione A.2, «Il comando dmsetup».
A.1. Tabella di mappatura del dispositivo Copia collegamentoCollegamento copiato negli appunti!
start length mapping [mapping_parameters...]
start length mapping [mapping_parameters...]
start
deve essere uguale a 0. I parametri start
+ length
su di una riga, devono essere uguali a start
sulla riga successiva. I parametri di mappatura da specificare sulla riga della tabella, dipendono dal tipo di mapping
specificato sulla riga.
/dev/hda
), o dai numeri minore e maggiore nel formato major
:minor
. Il formato major:minor viene preferito poichè evita i lookup del percorso.
0 35258368 linear 8:48 65920 35258368 35258368 linear 8:32 65920 70516736 17694720 linear 8:16 17694976 88211456 17694720 linear 8:16 256
0 35258368 linear 8:48 65920
35258368 35258368 linear 8:32 65920
70516736 17694720 linear 8:16 17694976
88211456 17694720 linear 8:16 256
lineare
. Il resto della riga consiste in parametri per un target lineare
.
- lineare
- striped
- mirror
- snapshot e snapshot-origin
- error
- zero
- multipath
- crypt
A.1.1. Target di mappatura lineare Copia collegamentoCollegamento copiato negli appunti!
start length linear device offset
start length linear device offset
start
- blocco iniziale in un dispositivo virtuale
length
- lunghezza di questo segmento
device
- dispositivo a blocchi, indicato dal nome del dispositivo nel filesystem o dai numeri maggiore e minore nel formato
major
:minor
offset
- offset iniziale della mappatura sul dispositivo
0 16384000 linear 8:2 41156992
0 16384000 linear 8:2 41156992
/dev/hda
specificato come parametro del dispositivo.
0 20971520 linear /dev/hda 384
0 20971520 linear /dev/hda 384
A.1.2. Target di mappatura striped Copia collegamentoCollegamento copiato negli appunti!
start length striped #stripes chunk_size device1 offset1 ... deviceN offsetN
start length striped #stripes chunk_size device1 offset1 ... deviceN offsetN
device
e offset
per ogni striscia.
start
- blocco iniziale in un dispositivo virtuale
length
- lunghezza di questo segmento
#stripes
- numero di strisce per il dispositivo virtuale
chunk_size
- numero dei settori scritti su ogni fascia prima di smistarsi su quella successiva; deve essere una potenza di 2 e grande almeno quanto la dimensione della pagina del kernel
device
- dispositivo a blocchi, indicato dal nome del dispositivo nel filesystem o dai numeri maggiore e minore nel formato
major
:minor
. offset
- offset iniziale della mappatura sul dispositivo
0 73728 striped 3 128 8:9 384 8:8 384 8:7 9789824
0 73728 striped 3 128 8:9 384 8:8 384 8:7 9789824
- 0
- blocco iniziale in un dispositivo virtuale
- 73728
- lunghezza di questo segmento
- striped 3 128
- striscia attraverso tre dispositivi con un segmento di 128 blocchi
- 8:9
- major:minor numeri del primo dispositivo
- 384
- offset d'avvio della mappatura sul primo dispositivo
- 8:8
- numeri major:minor del secondo dispositivo
- 384
- offset d'inizio della mappatura sul secondo dispositivo
- 8:7
- numeri major:minor del terzo dispositivo
- 9789824
- offset d'inizio della mappatura sul terzo dispositivo
0 65536 striped 2 512 /dev/hda 0 /dev/hdb 0
0 65536 striped 2 512 /dev/hda 0 /dev/hdb 0
A.1.3. Il target di mappatura mirror Copia collegamentoCollegamento copiato negli appunti!
start length mirror log_type #logargs logarg1 ... logargN #devs device1 offset1 ... deviceN offsetN
start length mirror log_type #logargs logarg1 ... logargN #devs device1 offset1 ... deviceN offsetN
start
- blocco iniziale in un dispositivo virtuale
length
- lunghezza di questo segmento
log_type
- I tipi possibili di log ed i rispettivi argomenti sono di seguito riportati:
core
- Il mirror è locale ed il mirror log viene conservato nella memoria principale. Questo tipo di log richiede 1 - 3 argomenti:regionsize [[
no
]sync
] [block_on_error
] disk
- Il mirror è locale ed il mirror log viene conservato sul disco. Questo tipo di log richiede 2 - 4 argomenti:logdevice regionsize [[
no
]sync
] [block_on_error
] clustered_core
- Il mirror è clusterizzato ed il mirror log viene conservato nella memoria principale. Questo tipo di log richiede 2 - 4 argomenti:regionsize UUID [[
no
]sync
] [block_on_error
] clustered_disk
- Il mirror è clusterizzato ed il mirror log viene conservato sul disco. Questo tipo di log richiede 3 - 5 argomenti:logdevice regionsize UUID [[
no
]sync
] [block_on_error
]
LVM conserva un piccolo log il quale viene utilizzato per controllare le regioni in sincronizzazione con i mirror. L'argomento regionsize specifica la dimensione di queste regioni.In un ambiente clusterizzato l'argomento UUID è un identificatore unico associato con il dispositivo mirror log, in modo da poter mantenere lo stato del log sull'intero cluster.The optional[no]sync
argument can be used to specify the mirror as "in-sync" or "out-of-sync". Theblock_on_error
argument is used to tell the mirror to respond to errors rather than ignoring them. #log_args
- numero di argomenti di log che verranno specificati nella mappatura.
logargs
- gli argomenti di log per il mirror; il numero di argomenti di log forniti viene specificato dal parametro
#log-args
, e gli argomenti di log validi sono determinati dal parametrolog_type
. #devs
- il numero di gambe (o sezioni) nel mirror; viene specificato un dispositivo ed un offset per ogni sezione.
device
- dispositivo a blocchi per ogni gamba del mirror, indicato dal nome del dispositivo nel filesystem o dai numeri major e minor nel formato
major
:minor
. Un dispositivo a blocchi e l'offset sono specificati per ogni gamba del mirror, come riportato dal parametro#devs
. offset
- offset d'inizio per la mappatura sul dispositivo. Un dispositivo a blocchi ed un offset sono specificati per ogni gamba del mirror, come indicato dal parametro
#devs
.
0 52428800 mirror clustered_disk 4 253:2 1024 UUID block_on_error 3 253:3 0 253:4 0 253:5 0
0 52428800 mirror clustered_disk 4 253:2 1024 UUID block_on_error 3 253:3 0 253:4 0 253:5 0
- 0
- blocco iniziale in un dispositivo virtuale
- 52428800
- lunghezza di questo segmento
- mirror clustered_disk
- target del mirror con un tipo di log il quale specifica un mirror clusterizzato con un mirror log conservato sul disco
- 4
- seguiranno 4 argomenti del mirror log
- 253:2
- major:minor numeri del dispositivo di log
- 1024
- dimensione della regione usata dal mirror log per controllare tutto ciò che è sincronizzato
UUID
- UUID del dispositivo del mirror log per conservare le informazioni di un intero cluster
block_on_error
- il mirror dovrebbe rispondere agli errori
- 3
- numero di gambe nel mirror
- 253:3 0 253:4 0 253:5 0
- numeri major:minor e offset per dispositivi che costituiscono ogni gamba del mirror
A.1.4. Target di mappatura snapshot e snapshot-origin Copia collegamentoCollegamento copiato negli appunti!
- Un dispositivo con una mappatura
lineare
contenente la tabella di mappatura originale del volume sorgente. - Un dispositivo con una mappatura
lineare
utilizzato come dispositivo copy-on-write (COW) per il volume sorgente; per ogni scrittura, i dati originali vengono salvati nel dispositivo COW di ogni snapshot per mantenere il proprio contenuto visibile invariato (fino al riempimento del dispositivo COW). - Un dispositivo con una mappatura
snapshot
che combina #1 e #2, il quale risulta essere il volume snapshot visibile. - The "original" volume (which uses the device number used by the original source volume), whose table is replaced by a "snapshot-origin" mapping from device #1.
base
, ed un volume snapshot chiamato snap
basato sul quel volume.
lvcreate -L 1G -n base volumeGroup lvcreate -L 100M --snapshot -n snap volumeGroup/base
# lvcreate -L 1G -n base volumeGroup
# lvcreate -L 100M --snapshot -n snap volumeGroup/base
snapshot-origin
è il seguente:
start length snapshot-origin origin
start length snapshot-origin origin
start
- blocco iniziale in un dispositivo virtuale
length
- lunghezza di questo segmento
origin
- volume di base di snapshot
snapshot-origin
avrà normalmente uno o più snapshot basati su di esso. I processi di lettura verranno mappati direttamente sul dispositivo di supporto. Per ogni processo di scrittura, i dati originali saranno salvati nel dispositivo COW di ogni snapshot, in modo da mantenere il proprio contenuto visibile invariato fino all'utilizzo completo del dispositivo COW.
snapshot
è il seguente:
start length snapshot origin COW-device P|N chunksize
start length snapshot origin COW-device P|N chunksize
start
- blocco iniziale in un dispositivo virtuale
length
- lunghezza di questo segmento
origin
- volume di base di snapshot
COW-device
- Dispositivo sul quale vengono conservati sezioni di dati modificati
- P|N
- P (Persistent) o N (Not persistent); indicano se snapshot sopravviverà dopo il riavvio. Per snapshot transitorie (N), una quantità minore di metadata deve essere salvata sul disco; essi possono essere conservati in memoria dal kernel.
chunksize
- Dimensione in settori dei segmenti modificati di dati che verranno conservati sul dispositivo COW.
snapshot-origin
con un dispositivo d'origine di 254:11.
0 2097152 snapshot-origin 254:11
0 2097152 snapshot-origin 254:11
snapshot
con un dispositivo d'origine di 254:11, ed un dispositivo COW di 254:12. Il dispositivo snapshot è persistente dopo ogni riavvio e la dimensione del segmento per i dati conservati sul dispositivo COW è di 16 settori.
0 2097152 snapshot 254:11 254:12 P 16
0 2097152 snapshot 254:11 254:12 P 16
A.1.5. Il target di mappatura error Copia collegamentoCollegamento copiato negli appunti!
error
non accetta parametri aggiuntivi oltre ai parametri start e length.
error
.
0 65536 error
0 65536 error
A.1.6. Target di mappatura zero Copia collegamentoCollegamento copiato negli appunti!
zero
è un dispositivo a blocchi equivalente a /dev/zero
. Un processo di lettura per questo tipo di mappatura ritorna blocchi di zero. I dati scritti su questa mappatura vengono scartati, ma il processo di scrittura avrà successo. Il target di mappatura zero
non accetta parametri aggiuntivi oltre ai parametri start e length.
zero
per un dispositivo a 16Tb.
0 65536 zero
0 65536 zero
A.1.7. Il target di mappatura multipath Copia collegamentoCollegamento copiato negli appunti!
multipath
è il seguente:
start length multipath #features [feature1 ... featureN] #handlerargs [handlerarg1 ... handlerargN] #pathgroups pathgroup pathgroupargs1 ... pathgroupargsN
start length multipath #features [feature1 ... featureN] #handlerargs [handlerarg1 ... handlerargN] #pathgroups pathgroup pathgroupargs1 ... pathgroupargsN
pathgroupargs
per ogni gruppo di percorsi.
start
- blocco iniziale in un dispositivo virtuale
length
- lunghezza di questo segmento
#features
- Il numero di funzioni multipath, seguito dalle funzioni in questione. Se questo parametro è zero allora non sarà disponibile alcun parametro
feature
, ed il parametro di mappatura del dispositivo successivo è#handlerargs
. Attualmente è supportata solo una funzione multipath,queue_if_no_path
. Ciò indica che il dispositivo 'multipathed' in questone è attualmente impostato per mettere in coda le operazioni I/O se non è disponibile alcun percorso.Per esempio, se l'opzioneno_path_retry
, nel filemultipath.conf
, è stata impostata in modo da mettere in coda le operazioni I/O solo fino a quando tutti i percorsi sono stati contrassegnati come falliti dopo un certo numero di tentativi fatti per utilizzare il percorso in questione, la mappatura apparirà nel modo seguente fino a quando tutti i controllori del percorso non avranno fallito il numero di controlli specificato.0 71014400 multipath 1 queue_if_no_path 0 2 1 round-robin 0 2 1 66:128 \ 1000 65:64 1000 round-robin 0 2 1 8:0 1000 67:192 1000
0 71014400 multipath 1 queue_if_no_path 0 2 1 round-robin 0 2 1 66:128 \ 1000 65:64 1000 round-robin 0 2 1 8:0 1000 67:192 1000
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Dopo che tutti i controllori del percorso hanno fallito il numero di controlli specificato, la mappatura apparirà nel modo seguente.0 71014400 multipath 0 0 2 1 round-robin 0 2 1 66:128 1000 65:64 1000 \ round-robin 0 2 1 8:0 1000 67:192 1000
0 71014400 multipath 0 0 2 1 round-robin 0 2 1 66:128 1000 65:64 1000 \ round-robin 0 2 1 8:0 1000 67:192 1000
Copy to Clipboard Copied! Toggle word wrap Toggle overflow #handlerargs
- Il numero di argomenti del gestore hardware seguito dagli argomenti. Un gestore hardware specifica il modulo che verrà utilizzato, per eseguire le azioni hardware specifiche durante lo smistamento tra gruppi dei percorsi o durante la gestione degli errori I/O. Se impostato su 0 il parametro successivo è
#pathgroups
. #pathgroups
- Il numero dei gruppi di percorsi. Un gruppo di percorsi rappresenta un insieme di percorsi attraverso i quali un dispositivo 'multipathed' bilancerà il carico. È disponibile un set di parametri
pathgroupargs
per ogni gruppo di percorsi. pathgroup
- Il gruppo di percorsi successivo da provare.
pathgroupsargs
- Ogni gruppo di percorsi presenta i seguenti argomenti:
pathselector #selectorargs #paths #pathargs device1 ioreqs1 ... deviceN ioreqsN
pathselector #selectorargs #paths #pathargs device1 ioreqs1 ... deviceN ioreqsN
Copy to Clipboard Copied! Toggle word wrap Toggle overflow È disponibile un set di argomenti per ogni percorso presente nel gruppo di percorsi.pathselector
- Specifica l'algoritmo utilizzato per determinare il percorso, presente all'interno del gruppo, da utilizzare per l'operazione I/O successiva.
#selectorargs
- Il numero di argomenti del selettore del percorso che segue questo argomento nella mappatura multipath. Attualmente il valore di questo argomento è sempre 0.
#paths
- Il numero di percorsi in questo gruppo di percorsi.
#pathargs
- Il numero di argomenti del percorso specificati per ogni percorso in questo gruppo. Attualmente questo numero è sempre 1, l'argomento
ioreqs
. device
- Il numero del dispositivo a blocchi del percorso, indicato dai numeri major e minor nel formato
major
:minor
ioreqs
- Il numero delle richieste I/O per l'instradamento per questo percorso prima di smistarsi sul percorso successivo nel gruppo corrente.
Figura A.1. Target di mappatura Multipath
0 71014400 multipath 0 0 4 1 round-robin 0 1 1 66:112 1000 \ round-robin 0 1 1 67:176 1000 round-robin 0 1 1 68:240 1000 \ round-robin 0 1 1 65:48 1000
0 71014400 multipath 0 0 4 1 round-robin 0 1 1 66:112 1000 \
round-robin 0 1 1 67:176 1000 round-robin 0 1 1 68:240 1000 \
round-robin 0 1 1 65:48 1000
0 71014400 multipath 0 0 1 1 round-robin 0 4 1 66:112 1000 \ 67:176 1000 68:240 1000 65:48 1000
0 71014400 multipath 0 0 1 1 round-robin 0 4 1 66:112 1000 \
67:176 1000 68:240 1000 65:48 1000
A.1.8. Target di mappatura crypt Copia collegamentoCollegamento copiato negli appunti!
crypt
cifra i dati che passano attraverso il dispositivo specificato. Esso utilizza il kernel Crypto API.
crypt
è il seguente:
start length crypt cipher key IV-offset device offset
start length crypt cipher key IV-offset device offset
start
- blocco iniziale in un dispositivo virtuale
length
- lunghezza di questo segmento
cipher
- Cipher consiste di
cipher[-chainmode]-ivmode[:iv options]
.cipher
- I Cipher disponibili sono riportati in
/proc/crypto
(per esempio,aes
). chainmode
- Utilizza sempre
cbc
. Non utilizzareebc
; esso non utilizza un initial vector (IV). ivmode[:iv options]
- IV è un initial vector utilizzato per variare la cifratura. La modalità IV può essere
plain
oessiv:hash
. Univmode
di-plain
utilizza il numero del settore (più l'offset IV) di IV. Univmode
di-essiv
è il modo migliore per non avere problemi con il watermark.
key
- Chiave di cifratura fornita in esadecimale
IV-offset
- Offset Initial Vector (IV)
device
- dispositivo a blocchi, indicato dal nome del dispositivo nel filesystem o dai numeri maggiore e minore nel formato
major
:minor
offset
- offset iniziale della mappatura sul dispositivo
crypt
.
0 2097152 crypt aes-plain 0123456789abcdef0123456789abcdef 0 /dev/hda 0
0 2097152 crypt aes-plain 0123456789abcdef0123456789abcdef 0 /dev/hda 0
A.2. Il comando dmsetup Copia collegamentoCollegamento copiato negli appunti!
dmsetup
è un wrapper della linea di comando per le comunicazioni con il Device Mapper. Per informazioni generali del sistema sui dispositivi LVM, le opzioni info
, ls
, status
, e deps
del comando dmsetup
potranno risultare utili, come descritto nelle seguenti sottosezioni.
dmsetup
consultate la pagina man (8) di dmsetup
.
A.2.1. Il comando dmsetup info Copia collegamentoCollegamento copiato negli appunti!
dmsetup info device
fornisce le informazioni sui dispositivi Device Mapper. Se non specificate alcun nome del dispositivo, l'output conterrà le informazioni di tutti i dispositivi Device Mapper attualmente configurati. Se al contrario viene specificato un dispositivo, le informazioni fornite riguarderanno solo il dispositivo interessato.
dmsetup info
fornisce le informazioni nelle seguenti categorie:
Name
- Il nome del dispositivo. Un dispositivo LVM viene indicato come nome del gruppo di volumi e nome del volume logico separato da un trattino. Un trattino nel nome originale viene tradotto in due trattini.
State
- Gli stati possibili del dispositivo sono
SUSPENDED
,ACTIVE
, eREAD-ONLY
. Il comandodmsetup suspend
imposta lo stato suSUSPENDED
. Quando un dispositivo risulta sospeso, tutte le operazioni I/O per quel dispositivo verranno arrestate. Il comandodmsetup resume
ripristina lo stato del dispositivo suACTIVE
. Read Ahead
- Il numero di blocchi dati letti a priori dal sistema per qualsiasi file aperto, sul quale sono in corso le operazioni di lettura. Nell'impostazione predefinita il kernel seleziona automaticamente un valore idoneo. È possibile modificare questo valore con l'opzione
--readahead
del comandodmsetup
. Tables present
- Possible states for this category are
LIVE
andINACTIVE
. AnINACTIVE
state indicates that a table has been loaded which will be swapped in when admsetup resume
command restores a device state toACTIVE
, at which point the table's state becomesLIVE
. For information, see thedmsetup
man page. Open count
- L'open reference count indica il numero di volte che un dispositivo viene aperto. Un comando
mount
apre il dispositivo. Event number
- The current number of events received. Issuing a
dmsetup wait n
command allows the user to wait for the n'th event, blocking the call until it is received. Major, minor
- I numeri maggiore e minore del dispositivo
Number of targets
- Il numero di frammenti che costituisce un dispositivo. Per esempio, un dispositivo lineare che si estende su 3 dischi avrà 3 target. Un dispositivo lineare composto dall'inizio e fine di un disco, ma non dal centro, avrà 2 target.
UUID
- UUID del dispositivo.
dmsetup info
.
A.2.2. Il comando dmsetup ls Copia collegamentoCollegamento copiato negli appunti!
dmsetup ls
. Si possono elencare i dispositivi con almeno un target specificato con il comando dmsetup ls --target target_type
. Per altre opzioni di dmsetup ls
, consultare la pagina man dmsetup
.
A.2.3. Il comando dmsetup status Copia collegamentoCollegamento copiato negli appunti!
dmsetup status device
fornisce le informazioni sullo stato per ogni target in un dispositivo specifico. Se non specificate alcun nome, l'output conterrà le informazioni di tutti i dispositivi Device Mapper attualmente configurati. È possibile elencare lo stato dei dispositivi con almeno un target di tipo specifico specificato con il comando dmsetup status --target target_type
.
A.2.4. Il comando dmsetup deps Copia collegamentoCollegamento copiato negli appunti!
dmsetup deps device
fornisce un elenco di coppie (maggiore, minore) per dispositivi indicati dalla tabella di mappatura per il dispositivo specificato. Se non specificate il nome del dispositivo, le informazioni contenute dall'output riguarderanno tutti i dispositivi Device Mapper attualmente configurati.
lock_stress-grant--02.1722
:
dmsetup deps lock_stress-grant--02.1722
[root@grant-01 ~]# dmsetup deps lock_stress-grant--02.1722
3 dependencies : (253, 33) (253, 32) (253, 31)
Appendice B. File di configurazione di LVM Copia collegamentoCollegamento copiato negli appunti!
lvm.conf
viene caricato dalla directory specificata per mezzo della variabile dell'ambiente LVM_SYSTEM_DIR
, la quale è impostata per default su /etc/lvm
.
lvm.conf
è in grado di specificare i file aggiuntivi di configurazione da caricare. Le impostazioni dei file più recenti sovrascrivono le impostazioni dei file meno recenti. Per visualizzare le impostazioni in uso dopo aver caricato tutti i file di configurazione, eseguite il comando lvm dumpconfig
.
B.1. File di configurazione di LVM Copia collegamentoCollegamento copiato negli appunti!
- /etc/lvm/lvm.conf
- file di configurazione centrale letto dai tool.
- etc/lvm/lvm_hosttag.conf
- For each host tag, an extra configuration file is read if it exists:
lvm_hosttag.conf
. If that file defines new tags, then further configuration files will be appended to the list of tiles to read in. For information on host tags, see Sezione C.2, «Tag dell'host».
- /etc/lvm/.cache
- file di cache del filtro del nome del dispositivo (configurabile).
- /etc/lvm/backup/
- directory per backup automatici dei metadata del gruppo di volumi (configurabili).
- /etc/lvm/archive/
- directory per archivi automatici di metadata per il gruppo di volumi (configurabile in relazione al percorso della directory ed alla cronologia).
- /var/lock/lvm
- In una configurazione host singolo eseguite il lock dei file per prevenire la corruzione dei metadata da parte del parallel tool; in un cluster viene usato il cluster-wide DLM.
B.2. Esempio di file lvm.conf Copia collegamentoCollegamento copiato negli appunti!
lvm.conf
. Il suddetto file di configurazione è il file predefinito per la versione RHEL 5.3. Se il vostro sistema ha una versione diversa di RHEL5, alcune delle impostazioni predefinite potrebbero differire.
Appendice C. Tag dell'oggetto LVM Copia collegamentoCollegamento copiato negli appunti!
database
.
lvs @database
lvs @database
C.1. Come aggiungere e rimuovere i tag dagli oggetti Copia collegamentoCollegamento copiato negli appunti!
--addtag
o --deltag
del comando pvchange
.
--addtag
o --deltag
dei comandi vgchange
o vgcreate
.
--addtag
o --deltag
dei comandi lvchange
o lvcreate
.
C.2. Tag dell'host Copia collegamentoCollegamento copiato negli appunti!
hosttags = 1
in the tags
section, a host tag is automatically defined using the machine's hostname. This allow you to use a common configuration file which can be replicated on all your machines so they hold identical copies of the file, but the behavior can differ between machines according to the hostname.
tag1
, e definisce tag2
se l'hostname è host1
.
tags { tag1 { } tag2 { host_list = ["host1"] } }
tags { tag1 { } tag2 { host_list = ["host1"] } }
C.3. Controllo attivazione con i tag Copia collegamentoCollegamento copiato negli appunti!
vgchange -ay
), attivando solo vg1/lvol0
e qualsiasi altro logical volume o gruppo di volumi con tag database
nei metadata su quell'host.
activation { volume_list = ["vg1/lvol0", "@database" ] }
activation { volume_list = ["vg1/lvol0", "@database" ] }
tags { hosttags = 1 }
tags { hosttags = 1 }
vg1/lvol2
solo su host db2
, fate quanto segue:
- Eseguite
lvchange --addtag @db2 vg1/lvol2
da qualsiasi host nel cluster. - Eseguite
lvchange -ay vg1/lvol2
.
Appendice D. Metadata del gruppo di volumi di LVM Copia collegamentoCollegamento copiato negli appunti!
--metadatacopies 0
del comando pvcreate
. Una volta selezionato il numero di copie metadata che il physical volume deve contenere, tale valore non potrà essere più modificato in futuro. Selezionando 0, ne risulterà in aggiornamenti più veloci delle modifiche relative alla configurazione. Da notare tuttavia che in ogni momento il gruppo di volumi deve contenere almeno un physical volume con un'area di metadata (se non state utilizzando impostazioni avanzate di configurazione che vi permetteranno di conservare i metadata del gruppo di volumi in un file system). Se desiderate dividere il gruppo di volumi in futuro, ogni gruppo di volumi avrà bisogno di almeno una copia di metadata.
--metadatasize
del comando pvcreate
. La dimensione predefinita è troppo piccola per i gruppi di volumi con un numero elevato di logical volume o physical volume.
D.1. Etichetta del physical volume Copia collegamentoCollegamento copiato negli appunti!
pvcreate
posiziona l'etichetta del physical volume nel secondo settore di 512-byte. La suddetta etichetta può essere posizionata in qualsiasi dei primi quattro settori, poichè i tool di LVM alla ricerca di una etichetta del physical volume, controllano i primi quattro settori. L'etichetta del physical volume inizia con la stringa LABELONE
.
- UUID del Physical Volume
- La dimensione del dispositivo a blocchi in byte
- Un elenco terminato da NULL delle posizioni dell'area dei dati
- Elenchi terminati da NULL di posizioni dell'area dei metadata.
D.2. Contenuti dei metadata Copia collegamentoCollegamento copiato negli appunti!
- Informazioni su quando e come sono stati creati
- Informazioni sul gruppo di volumi:
- Nome ed id unico
- Un numero della versione il quale viene incrementato ogni qualvolta vengono aggiornati i metadata
- Qualsiasi proprietà: Lettura/Scrittura? Ridimensionabile?
- Qualsiasi limite amministrativo sul numero di logical/physical volume che si possono contenere
- L'entità della dimensione (in unità di secondi definiti come 512 byte)
- Un elenco non ordinato di physical volume che costituiscono il gruppo di volumi, ognuno con:
- Il proprio UUID, viene usato per determinare il dispositivo a blocchi che lo contiene
- Qualsiasi proprietà, come ad esempio se il Physical Volume è assegnabile
- L'offset per l'inizio della prima estensione all'interno del Physical Volume (in settori)
- Il numero delle estensioni
- Un elenco non ordinato di logical volume. Ognuno costituito da
- Un elenco ordinato di segmenti di volume logico. Per ogni segmento i metadata includono una mappatura applicata ad un elenco ordinato di segmenti del Physical Volume o segmenti di logical volume
D.3. Esempio di metadata Copia collegamentoCollegamento copiato negli appunti!
myvg
.
Appendice E. Cronologia della revisione Copia collegamentoCollegamento copiato negli appunti!
Diario delle Revisioni | |||
---|---|---|---|
Revisione 3-6.400 | 2013-10-31 | ||
| |||
Revisione 3-6 | 2012-07-18 | ||
| |||
Revisione 1.0-0 | Thu Jan 29 2009 | ||
|
Indice analitico
A
- activating logical volumes
- individual nodes, Attivazione dei volumi logici su nodi individuali in un cluster
- activating volume groups, Attivazione e disattivazione dei gruppi di volumi
- individual nodes, Attivazione e disattivazione dei gruppi di volumi
- local node only, Attivazione e disattivazione dei gruppi di volumi
- administrative procedures, Panoramica sull'amministrazione di LVM
- allocation
- archive file, Backup del volume logico, Esecuzione del back up dei metadata del gruppo di volumi
B
- backup
- backup file, Esecuzione del back up dei metadata del gruppo di volumi
- block device
- scanning, Scansione per dispositivi a blocchi
C
- cache file
- cluster environment, LVM Logical Volume Manager (CLVM), Creazione dei volumi LVM in un cluster
- CLVM
- definition, LVM Logical Volume Manager (CLVM)
- clvmd daemon, LVM Logical Volume Manager (CLVM)
- command line units, Come utilizzare i comandi CLI
- configuration examples, Esempi di configurazione LVM
- creating
- logical volume, Creazione dei volume logico
- logical volume, example, Creazione di un volume logico LVM su tre dischi
- LVM volumes in a cluster, Creazione dei volumi LVM in un cluster
- physical volumes, Creazione dei physical volume
- striped logical volume, example, Creazione di un volume logico Striped
- volume group, clustered, Creazione dei gruppi di volumi in un cluster
- volume groups, Creazione dei gruppi di volumi
- creating LVM volumes
D
- data relocation, online, Riassegnazione dati online
- deactivating volume groups, Attivazione e disattivazione dei gruppi di volumi
- exclusive on one node, Attivazione e disattivazione dei gruppi di volumi
- local node only, Attivazione e disattivazione dei gruppi di volumi
- device numbers
- major, Numeri del dispositivo persistenti
- minor, Numeri del dispositivo persistenti
- persistent, Numeri del dispositivo persistenti
- device path names, Come utilizzare i comandi CLI
- device scan filters, Controllo delle scansioni del dispositivo LVM con i filtri
- device size, maximum, Creazione dei gruppi di volumi
- device special file directory, Creazione dei gruppi di volumi
- display
- sorting output, Come ordinare i riporti di LVM
- displaying
- logical volumes, Visualizzazione dei volumi logici, Il comando lvs
- physical volumes, Visualizzazione dei physical volume, Il comando pvs
- volume groups, Come visualizzare i gruppi di volumi, Il comando vgs
E
- extent
- allocation, Creazione dei gruppi di volumi
- definition, Gruppi di volumi, Creazione dei gruppi di volumi
F
- failed devices
- feedback, Suggerimenti
- file system
- growing on a logical volume, Sviluppo di un file system su di un volume logico
- filters, Controllo delle scansioni del dispositivo LVM con i filtri
G
- growing file system
- logical volume, Sviluppo di un file system su di un volume logico
H
- help display, Come utilizzare i comandi CLI
I
- initializing
- partitions, Inizializzazione dei physical volume
- physical volumes, Inizializzazione dei physical volume
- Insufficient Free Extents message, Estensioni disponibili insufficienti per un volume logico
L
- linear logical volume
- converting to mirrored, Come modificare la configurazione del volume speculare
- creation, Creazione volumi lineari
- definition, Volumi lineari
- logging, Registrazione
- logical volume
- administration, general, Amministrazione del volume logico
- changing parameters, Modifica dei parametri di un gruppo di volumi logici
- creation, Creazione dei volume logico
- creation example, Creazione di un volume logico LVM su tre dischi
- definition, Volumi logici, Volumi logici LVM
- displaying, Visualizzazione dei volumi logici, Personalizzazione dei riporti per LVM, Il comando lvs
- exclusive access, Attivazione dei volumi logici su nodi individuali in un cluster
- extending, Come aumentare la dimensione dei volumi logici
- growing, Come aumentare la dimensione dei volumi logici
- linear, Creazione volumi lineari
- local access, Attivazione dei volumi logici su nodi individuali in un cluster
- lvs display arguments, Il comando lvs
- mirrored, Creazione volumi speculari
- reducing, Come ridurre le dimensione dei volumi logici
- removing, Rimozione dei volumi logici
- renaming, Modifica del nome dei volumi logici
- resizing, Modifica della dimensione dei logical volumes
- shrinking, Come ridurre le dimensione dei volumi logici
- snapshot, Creazione dei volumi della snapshot
- striped, Creazione dei volumi striped
- lvchange command, Modifica dei parametri di un gruppo di volumi logici
- lvconvert command, Come modificare la configurazione del volume speculare
- lvcreate command, Creazione dei volume logico
- lvdisplay command, Visualizzazione dei volumi logici
- lvextend command, Come aumentare la dimensione dei volumi logici
- LVM
- architecture overview, Panoramica sull'architettura di LVM
- clustered, LVM Logical Volume Manager (CLVM)
- components, Panoramica sull'architettura di LVM, Componenti di LVM
- custom report format, Personalizzazione dei riporti per LVM
- directory structure, Creazione dei gruppi di volumi
- help, Come utilizzare i comandi CLI
- history, Panoramica sull'architettura di LVM
- label, Physical Volumes
- logging, Registrazione
- logical volume administration, Amministrazione del volume logico
- physical volume administration, Amministrazione del Physical Volume
- physical volume, definition, Physical Volumes
- volume group, definition, Gruppi di volumi
- LVM1, Panoramica sull'architettura di LVM
- LVM2, Panoramica sull'architettura di LVM
- lvmdiskscan command, Scansione per dispositivi a blocchi
- lvreduce command, Modifica della dimensione dei logical volumes, Come ridurre le dimensione dei volumi logici
- lvremove command, Rimozione dei volumi logici
- lvrename command, Modifica del nome dei volumi logici
- lvs command, Personalizzazione dei riporti per LVM, Il comando lvs
- display arguments, Il comando lvs
- lvscan command, Visualizzazione dei volumi logici
M
- man page display, Come utilizzare i comandi CLI
- metadata
- mirrored logical volume
- converting to linear, Come modificare la configurazione del volume speculare
- creation, Creazione volumi speculari
- definition, Volumi logici speculari
- failure recovery, Processo di recupero da un LVM Mirror Failure
- reconfiguration, Come modificare la configurazione del volume speculare
O
- online data relocation, Riassegnazione dati online
P
- partition type, setting, Impostazione del tipo di partizione
- partitions
- multiple, Partizioni multiple su di un disco
- path names, Come utilizzare i comandi CLI
- persistent device numbers, Numeri del dispositivo persistenti
- physical extent
- preventing allocation, Come impedire l'assegnazione su di un physical volume
- physical volume
- adding to a volume group, Aggiunta di physical volume ad un gruppo di volumi
- administration, general, Amministrazione del Physical Volume
- creating, Creazione dei physical volume
- definition, Physical Volumes
- display, Il comando pvs
- displaying, Visualizzazione dei physical volume, Personalizzazione dei riporti per LVM
- illustration, LVM Physical Volume Layout
- initializing, Inizializzazione dei physical volume
- layout, LVM Physical Volume Layout
- pvs display arguments, Il comando pvs
- recovery, Sostituzione di un Physical Volume mancante
- removing, Rimozione dei physical volume
- removing from volume group, Rimozione dei physical volume da un gruppo di volumi
- removing lost volume, Rimozione dei physical volume persi da un gruppo di volumi
- resizing, Come variare la dimensione di un Physical Volume
- pvdisplay command, Visualizzazione dei physical volume
- pvmove command, Riassegnazione dati online
- pvremove command, Rimozione dei physical volume
- pvresize command, Come variare la dimensione di un Physical Volume
- pvs command, Personalizzazione dei riporti per LVM
- display arguments, Il comando pvs
- pvscan command, Visualizzazione dei physical volume
R
- removing
- disk from a logical volume, Rimozione di un disco da un volume logico
- logical volume, Rimozione dei volumi logici
- physical volumes, Rimozione dei physical volume
- renaming
- logical volume, Modifica del nome dei volumi logici
- volume group, Come rinominare un gruppo di volumi
- report format, LVM devices, Personalizzazione dei riporti per LVM
- resizing
- logical volume, Modifica della dimensione dei logical volumes
- physical volume, Come variare la dimensione di un Physical Volume
S
- scanning
- block devices, Scansione per dispositivi a blocchi
- scanning devices, filters, Controllo delle scansioni del dispositivo LVM con i filtri
- snapshot logical volume
- creation, Creazione dei volumi della snapshot
- snapshot volume
- definition, Volumi delle snapshot
- striped logical volume
- creation, Creazione dei volumi striped
- creation example, Creazione di un volume logico Striped
- definition, Volumi logici striped
- extending, Come estendere un volume striped
- growing, Come estendere un volume striped
T
- troubleshooting, Troubleshooting LVM
U
- units, command line, Come utilizzare i comandi CLI
V
- verbose output, Come utilizzare i comandi CLI
- vgcfbackup command, Esecuzione del back up dei metadata del gruppo di volumi
- vgcfrestore command, Esecuzione del back up dei metadata del gruppo di volumi
- vgchange command, Modifica dei parametri di un gruppo di volumi
- vgcreate command, Creazione dei gruppi di volumi, Creazione dei gruppi di volumi in un cluster
- vgdisplay command, Come visualizzare i gruppi di volumi
- vgexport command, Come spostare un gruppo di volumi su di un altro sistema
- vgextend command, Aggiunta di physical volume ad un gruppo di volumi
- vgimport command, Come spostare un gruppo di volumi su di un altro sistema
- vgmerge command, Come unire i gruppi di volumi
- vgmknodes command, Come ricreare una directory del gruppo di volumi
- vgreduce command, Rimozione dei physical volume da un gruppo di volumi
- vgrename command, Come rinominare un gruppo di volumi
- vgs command, Personalizzazione dei riporti per LVM
- display arguments, Il comando vgs
- vgscan command, Scansione dischi per i gruppi di volumi per la creazione del file di cache
- vgsplit command, Separazione di un gruppo di volumi
- volume group
- activating, Attivazione e disattivazione dei gruppi di volumi
- administration, general, Amministrazione del gruppo di volumi
- changing parameters, Modifica dei parametri di un gruppo di volumi
- combining, Come unire i gruppi di volumi
- creating, Creazione dei gruppi di volumi
- creating in a cluster, Creazione dei gruppi di volumi in un cluster
- deactivating, Attivazione e disattivazione dei gruppi di volumi
- definition, Gruppi di volumi
- displaying, Come visualizzare i gruppi di volumi, Personalizzazione dei riporti per LVM, Il comando vgs
- extending, Aggiunta di physical volume ad un gruppo di volumi
- growing, Aggiunta di physical volume ad un gruppo di volumi
- merging, Come unire i gruppi di volumi
- moving between systems, Come spostare un gruppo di volumi su di un altro sistema
- reducing, Rimozione dei physical volume da un gruppo di volumi
- removing, Rimozione dei gruppi di volumi
- renaming, Come rinominare un gruppo di volumi
- shrinking, Rimozione dei physical volume da un gruppo di volumi
- splitting, Separazione di un gruppo di volumi
- example procedure, Separazione di un gruppo di volumi
- vgs display arguments, Il comando vgs