Administration du gestionnaire de volumes logiques
Guide de l'administrateur LVM
Édition 3
Résumé
Introduction
1. À propos de ce guide Copier lienLien copié sur presse-papiers!
2. Public visé Copier lienLien copié sur presse-papiers!
3. Versions du logiciel Copier lienLien copié sur presse-papiers!
| Logiciel | Description |
|---|---|
|
RHEL5
|
Se réfère à RHEL5 et les versions plus récentes
|
|
GFS
|
Se réfère à GFS pour RHEL5 et les versions plus récentes
|
4. Documentation annexe Copier lienLien copié sur presse-papiers!
- Guide d'installation de Red Hat Enterprise Linux — Fournit des informations à propos de l'installation de Red Hat Enterprise Linux 5.
- Guide déploiement de Red Hat Enterprise Linux — Fournit des informations à propos du déploiement, de la configuration et de l'administration de Red Hat Enterprise Linux 5.
- Aperçu de Red Hat Cluster Suite — Fournit un aperçu de haut niveau à propos de Red Hat Cluster Suite.
- Configuration et gestion d'un cluster Red Hat — Fournit des informations à propos de l'installation, la configuration et la gestion des composants Red Hat Cluster.
- Système de fichiers GFS : configuration et administration — Fournit des informations à propos de l'installation, la configuration et la maintenance de Red Hat GFS (Red Hat Global File System).
- Système de fichiers GFS : configuration et administration — Fournit des informations à propos de l'installation, la configuration et la maintenance de Red Hat GFS2 (Red Hat Global File System 2).
- Utilisation de "Device-Mapper Multipath" — Fournit des informations à propos de l'utilisation de la fonctionnalité "Device-Mapper Multipath" de Red Hat Enterprise Linux 5.
- Utilisation de GNBD avec le système de fichiers GFS — Fournit un aperçu de l'utilisation de GNBD (de l'anglais Global Network Block Device) avec Red Hat GFS.
- Administration du serveur virtuel Linux — Fournit des informations à propos de la configuration de systèmes et services à hautes performances avec le serveur virtuel Linux (LVS de l'anglais Linux Virtual Server).
- Notes de mise à jour de Red Hat Cluster Suite — Fournit des informations à propos de la version courante de Red Hat Cluster Suite.
5. Commentaire Copier lienLien copié sur presse-papiers!
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)
Chapitre 1. Le gestionnaire de volumes logiques LVM Copier lienLien copié sur presse-papiers!
1.1. Volumes logiques Copier lienLien copié sur presse-papiers!
- Capacité flexibleLors de l'utilisation de volumes logiques, les systèmes de fichiers peuvent être étendus à travers plusieurs disques, étant donné que vous pouvez regrouper les disques et partitions dans un seul volume logique.
- Pools de stockage redimensionnablesVous pouvez augmenter ou réduire la taille des volumes logiques avec de simples commandes logicielles, sans reformater et repartitionner les périphériques disques sous-jacents.
- Déplacement des données en lignePour déployer de nouveaux sous-systèmes de stockage plus résistants et plus rapides, vous pouvez déplacer les données là où votre système est actif. Les données peuvent être réarrangées sur les disques pendant qu'ils sont utilisés. Vous pouvez par exemple vider un disque changeable à chaud (hot-swappable) avant de le supprimer.
- Nommage des périphériques pratiqueLes volumes de stockage logiques peuvent être gérés dans des groupes définis par les utilisateurs que vous pouvez nommer à votre convenance.
- Disques en mode stripeVous pouvez créer un volume logique qui sépare les données à travers deux ou plusieurs disques en suivant un modèle round-robin. Cela peut augmenter le débit de manière significative.
- Volumes miroirsLes volumes logiques offrent un moyen pratique afin de configurer un miroir pour vos données.
- Instantanés de volumesEn utilisant les volumes logiques, vous pouvez prendre des instantanés de périphériques pour des sauvegardes efficaces ou pour tester des modifications sans affecter les autres données.
1.2. Aperçu de l'architecture LVM Copier lienLien copié sur presse-papiers!
- Capacité flexible
- Stockage des métadonnées plus efficace
- Format de récupération amélioré
- Nouveau format de métadonnées ASCII
- Changements atomiques des métadonnées
- Copies redondantes des métadonnées
vgconvert. Pour obtenir des informations à propos de la conversion du format des métadonnées LVM, reportez-vous à la page de manuel vgconvert(8).
Figure 1.1. LVM Logical Volume Components
1.3. Le gestionnaire de volumes logiques clusterisé (CLVM) Copier lienLien copié sur presse-papiers!
- Si un seul noeud de votre système requiert accès au stockage que vous configurez, en tant que volumes logiques, vous pourrez alors utiliser LVM sans les extensions CLVM et les volumes logiques créés avec ce noeud, sont tous locaux par rapport au noeud.
- SI vous utilisez un système clusterisé pour les failover, dans lequel juste un noeud en train d'accéder au stockage, est actif, à tout moment, vous devrez utiliser les agents HA-LVM (High Availability Logical Volume Management agents). Pour davantage d'informations sur HA-LVM, voir Configuring and Managing a Red Hat Cluster.
- CLVM permet à un utilisateur de configurer des volumes logiques sur une mémoire partagée en verrouillant l'accès au stockage physique pendant qu'un volume est en cours de configuration, et utilise les services de verrouillage clusterisé pour gérer la mémoire partagée.
clmvd, doit être en cours d'exécution. Le démon clmvd est l'extension de mise en cluster clé pour LVM. Le démon clmvd est démarré sur chaque ordinateur du cluster et distribue les mises à jour de métadonnées au sein du cluster, en présentant à chaque ordinateur du cluster la même vue des volumes logiques. Pour toute information supplémentaire sur l'installation et l'administration de Red Hat Cluster Suite, voir Configuring and Managing a Red Hat Cluster.
clmvd soit bien démarré en cours d'initialisation, vous pouvez exécuter une commande chkconfig ... on sur le service clvmd, comme suit :
chkconfig clvmd on
# chkconfig clvmd on
clvmd n'a pas été démarré, vous pouvez exécuter une commande service ... start sur le service clvmd, comme suit :
service clvmd start
# service clvmd start
Figure 1.2. Aperçu de CLVM
Note
clvmd) ou les agents HA-LVM (de l'anglais High Availability Logical Volume Management). Si vous n'êtes pas en mesure d'utiliser le démon clvmd ou HA-LVM pour des raisons opéraitonnelles ou parce que vous ne possédez pas les privilèges d'accès, vous ne pourrez pas utiliser une instance unique LVM sur le disque partagé, car cela pourrait résulter par la corruption des données. Si vous avez des questions à ce sujet, n'hésitez pas à contacter votre représentant commercial Red Hat.
Note
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 Annexe B, Les fichiers de configuration LVM.
1.4. Aperçu du document Copier lienLien copié sur presse-papiers!
- Chapitre 2, Composants LVM describes the components that make up an LVM logical volume.
- Chapitre 3, Aperçu général de l'administration 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).
- Chapitre 4, Administration LVM avec les commandes CLI summarizes the individual administrative tasks you can perform with the LVM CLI commands to create and maintain logical volumes.
- Chapitre 5, Exemples de configuration LVM provides a variety of LVM configuration examples.
- Chapitre 6, Résolution de problèmes LVM provides instructions for troubleshooting a variety of LVM issues.
- Chapitre 7, Administration LVM avec l'interface utilisateur graphique LVM summarizes the operating of the LVM GUI.
- Annexe A, Device Mapper (Mappeur de périphériques) describes the Device Mapper that LVM uses to map logical and physical volumes.
- Annexe B, Les fichiers de configuration LVM describes the LVM configuration files.
- Annexe C, Les balises des objets LVM describes LVM object tags and host tags.
- Annexe D, Métadonnées des groupes de volumes LVM describes LVM volume group metadata, and includes a sample copy of metadata for an LVM volume group.
Chapitre 2. Composants LVM Copier lienLien copié sur presse-papiers!
2.1. Les volumes physiques Copier lienLien copié sur presse-papiers!
2.1.1. LVM Physical Volume Layout Copier lienLien copié sur presse-papiers!
Note
Figure 2.1. Structure d'un volume physique
2.1.2. Plusieurs partitions sur un disque Copier lienLien copié sur presse-papiers!
- Facilité d'administrationIl est plus facile d'assurer le suivi du matériel au sein d'un système si chaque disque réel n'apparaît qu'une seule fois. Ceci est particulièrement vrai si un disque échoue. De plus, plusieurs volumes physiques sur un seul disque peuvent provoquer, au moment du démarrage, la génération d'un avertissement du noyau relatif à des types de partitions inconnus.
- Performances en mode stripeLVM ne peut pas savoir si deux volumes physiques sont sur le même disque physique. Si vous créez un volume logique en mode stripe lorsque deux volumes physiques sont sur le même disque, les stripes pourraient se trouver sur des partitions différentes. Cela causerait une diminution des performances plutôt qu'une augmentation.
2.2. Les groupes de volumes Copier lienLien copié sur presse-papiers!
2.3. Les volumes logiques LVM Copier lienLien copié sur presse-papiers!
2.3.1. Les volumes linéaires Copier lienLien copié sur presse-papiers!
Figure 2.2. Mappage des extensions
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.
Figure 2.3. Volume linéaire avec des volumes physiques différents
LV1, which is 250 extents in size (1000MB) and LV2 which is 50 extents in size (200MB).
Figure 2.4. Plusieurs volumes logiques
2.3.2. Les volumes logiques en mode stripe Copier lienLien copié sur presse-papiers!
- le premier stripe de données est écrit sur PV1
- le second stripe de données est écrit sur PV2
- le troisième stripe de données est écrit sur PV3
- le quatrième stripe de données est écrit sur PV1
Figure 2.5. Striping des données à travers 3 PV
2.3.3. Les volumes logiques en miroir Copier lienLien copié sur presse-papiers!
Figure 2.6. Mirrored Logical Volume
Note
2.3.4. Les volumes d'instantanés Copier lienLien copié sur presse-papiers!
Note
Note
- Généralement, un instantané est pris afin d'effectuer une sauvegarde sur un volume logique sans arrêter le système en cours qui met à jour les données de façon continue.
- Vous pouvez exécuter la commande
fscksur l'instantané d'un système de fichiers pour vérifier l'intégrité du système de fichiers et déterminer si le système de fichiers d'origine doit être réparé. - Étant donné que l'instantané est en lecture-écriture, vous pouvez tester les applications avec des données de production en prenant un instantané et en exécutant des tests sur cet instantané, sans modifier les données réelles.
- Vous pouvez créer des volumes pour une utilisation avec le contrôleur de machines virtuelles Xen. Vous pouvez utiliser la fonctionnalité relative aux instantanés afin de créer une image disque, prendre un instantané de cette image et le modifier pour une instance domU particulière. Vous pouvez ensuite créer un autre instantané et le modifier pour une autre instance domU. Dans la mesure où le seul stockage utilisé est composé de sections qui ont été modifiées sur le périphérique d'origine ou l'instantané, la majorité du volume est partagée.
Chapitre 3. Aperçu général de l'administration LVM Copier lienLien copié sur presse-papiers!
3.1. Création de volumes LVM dans un cluster Copier lienLien copié sur presse-papiers!
clmvd daemon, must be started at boot time, as described in Section 1.3, « Le gestionnaire de volumes logiques clusterisé (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 Annexe B, Les fichiers de configuration LVM.
Note
clvmd) ou bien les agents HA-LVM (High Availability Logical Volume Management agents). Si vous n'êtes pas en position d'utiliser le démon clvmd ou HA-LVM pour des raisons opérationnelles, ou parce que vous n'avez pas les privilèges requis, vous ne pourrez pas utiliser d'instance-simple sur le disque partagé car cela risquerait de polluer les données. Si vous avez des questions à ce sujet, n'hésitez pas à contacter votre représentant commercial Red Hat.
3.2. Aperçu de la création d'un volume logique Copier lienLien copié sur presse-papiers!
- Initialisez les partitions que vous utiliserez pour le volume LVM en tant que volumes physiques (cela permet de les étiqueter).
- Créez un groupe de volumes.
- Créez un volume logique.
- Créez un système de fichiers GFS sur le volume logique avec la commande
gfs_mkfs. - Créez un nouveau point de montage avec la commande
mkdir. Dans un système clusterisé, créez le point de montage sur tous les noeuds du cluster. - Montez le système de fichiers. Vous pouvez ajouter une ligne au fichier
fstabpour chaque noeud du système.
3.3. Augmentation de la taille d'un système de fichiers sur un volume logique Copier lienLien copié sur presse-papiers!
- Créez un nouveau volume physique.
- Étendez le groupe de volumes contenant le volume logique avec le système de fichiers que vous voulez augmenter afin d'inclure le nouveau volume physique.
- Étendez le volume logique pour inclure le nouveau volume physique.
- Augmentez la taille du système de fichiers.
3.4. Sauvegarde d'un volume logique Copier lienLien copié sur presse-papiers!
lvm.conf, les sauvegardes de métadonnées et d'archives sont automatiquement créées lorsque la configuration d'un groupe de volumes ou d'un volume logique change. Par défaut, les sauvegardes de métadonnées sont stockées dans le fichier /etc/lvm/backup et les sauvegardes d'archives de métadonnées sont stockées dans /etc/lvm/archive. La durée pendant laquelle les archives de métadonnées sont stockées dans /etc/lvm/archive ainsi que le nombre de fichiers archives stockés sont spécifiés dans le fichier lvm.conf. Une sauvegarde système journalière devrait inclure le contenu du répertoire /etc/lvm dans la sauvegarde.
/etc/lvm/backup file with the vgcfgbackup command. You can restore metadata with the vgcfgrestore command. The vgcfgbackup and vgcfgrestore commands are described in Section 4.3.12, « Sauvegarde des métadonnées d'un groupe de volumes ».
3.5. Journalisation Copier lienLien copié sur presse-papiers!
- sortie/erreur standard
- syslog
- fichier journal
- fonction de journalisation externe
/etc/lvm/lvm.conf file, which is described in Annexe B, Les fichiers de configuration LVM.
Chapitre 4. Administration LVM avec les commandes CLI Copier lienLien copié sur presse-papiers!
Note
clvmd daemon. For information, see see Section 3.1, « Création de volumes LVM dans un cluster ».
4.1. Utilisation des commandes CLI Copier lienLien copié sur presse-papiers!
--units dans une commande, les lettres minuscules représentent les unités en multiples de 1024 alors que les lettres majuscules représentent les unités en multiples de 1000.
lvol0 dans un groupe de volumes appelé vg0 peut être spécifié comme vg0/lvol0. Si une liste de groupes de volumes est laissée vide, une liste de tous les groupes de volumes sera substituée. Si, à la place d'une liste de volumes logiques, un groupe de volumes est spécifié, une liste de tous les volumes logique du groupe de volumes sera substituée. Par exemple, la commande lvdisplay vg0 affichera tous les volumes logiques du groupe de volumes vg0.
-v qui peut être saisi plusieurs fois afin d'améliorer la verbosité d'une sortie. Les exemples suivants illustrent la sortie par défaut de la commande lvcreate.
lvcreate -L 50MB new_vg Rounding up size to full physical extent 52.00 MB Logical volume "lvol0" created
# lvcreate -L 50MB new_vg
Rounding up size to full physical extent 52.00 MB
Logical volume "lvol0" created
lvcreate avec l'argument -v.
-vv, -vvv ou -vvvv pour afficher davantage de détails à propos de l'exécution de cette commande. L'argument -vvvv fournit actuellement la plus grande quantité d'informations. L'exemple suivant illustre uniquement les premières lignes de la sortie pour la commande lvcreate avec l'argument -vvvv spécifié.
--help.
commandname --help
commandname --help
man :
man commandname
man commandname
man lvm fournit des informations générales en ligne à propos de 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 Section 6.4, « Recupération des métadonnées du volume physique ».
4.2. Administration de volumes physiques Copier lienLien copié sur presse-papiers!
4.2.1. Création de volumes physiques Copier lienLien copié sur presse-papiers!
4.2.1.1. Paramétrage du type de partition Copier lienLien copié sur presse-papiers!
fdisk ou cfdisk ou un équivalent. Pour les périphériques disque entiers, seule la table de partition doit être supprimée, ce qui détruira efficacement toutes les données sur ce disque. Vous pouvez supprimer une table de partitions existante en remettant à zéro le premier secteur avec la commande suivante :
dd if=/dev/zero of=PhysicalVolume bs=512 count=1
dd if=/dev/zero of=PhysicalVolume bs=512 count=1
4.2.1.2. Initialisation des volumes physiques Copier lienLien copié sur presse-papiers!
pvcreate pour initialiser un périphérique bloc à utiliser en tant que volume physique. L'initialisation est analogue au formatage d'un système de fichiers.
/dev/sdd1, /dev/sde1 et /dev/sdf1 pour l'utilisation en tant que volumes physiques LVM.
pvcreate /dev/sdd1 /dev/sde1 /dev/sdf1
pvcreate /dev/sdd1 /dev/sde1 /dev/sdf1
pvcreate sur la partition. L'exemple suivant initialise /dev/hdb1 comme un volume physique LVM pour l'utiliser par la suite dans le cadre d'un volume logique LVM.
pvcreate /dev/hdb1
pvcreate /dev/hdb1
4.2.1.3. Recherche de périphériques blocs Copier lienLien copié sur presse-papiers!
lvmdiskscan, comme illustré dans l'exemple suivant.
4.2.2. Affichage des volumes physiques Copier lienLien copié sur presse-papiers!
pvs, pvdisplay et 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 Section 4.9, « Rapport personnalisé pour LVM ».
pvdisplay fournit une sortie verbeuse sur plusieurs lignes pour chaque volume physique. Elle affiche des propriétés physiques (taille, extensions, groupe de volumes, etc.) dans un format fixe.
pvdisplay pour un volume physique unique.
pvscan recherche les volumes physiques à travers tous les périphériques blocs LVM supportés dans le système.
lvm.conf so that this command will avoid scanning specific physical volumes. For information on using filters to control which devices are scanned, see Section 4.6, « Contrôler l'analyse des périphériques LVM avec les filtres ».
4.2.3. Empêcher l'allocation sur un volume physique Copier lienLien copié sur presse-papiers!
pvchange. Cela peut être nécessaire s'il y a des erreurs de disque ou si vous prévoyez de supprimer le volume physique.
/dev/sdk1.
pvchange -x n /dev/sdk1
pvchange -x n /dev/sdk1
-xy de la commande pvchange pour autoriser l'allocation là où elle a été précédemment interdite.
4.2.4. Redimensionnement de volumes physiques Copier lienLien copié sur presse-papiers!
pvresize pour mettre à jour LVM avec la nouvelle taille. Vous pouvez exécuter la commande pendant que LVM utilise le volume physique.
4.2.5. Suppression de volumes physiques Copier lienLien copié sur presse-papiers!
pvremove. L'exécution de la commande pvremove remet à zéro les métadonnées LVM sur un volume physique vide.
vgreduce command, as described in Section 4.3.6, « Suppression de volumes physiques à partir d'un groupe de volumes ».
pvremove /dev/ram15 Labels on physical volume "/dev/ram15" successfully wiped
# pvremove /dev/ram15
Labels on physical volume "/dev/ram15" successfully wiped
4.3. Administration d'un groupe de volumes Copier lienLien copié sur presse-papiers!
4.3.1. Création de groupes de volumes Copier lienLien copié sur presse-papiers!
vgcreate command. The vgcreate command creates a new volume group by name and adds at least one physical volume to it.
vg1 qui contient les volumes physiques /dev/sdd1 et /dev/sde1.
vgcreate vg1 /dev/sdd1 /dev/sde1
vgcreate vg1 /dev/sdd1 /dev/sde1
vgcreate et l'argument -s . Vous pouvez spécifier des limites sur le nombre de volumes physiques ou logiques que le groupe de volumes peut avoir en utilisant les arguments -p et -l de la commande vgcreate.
normal. Vous pouvez utiliser l'argument --alloc de la commande vgcreate pour spécifier une politique d'allocation contiguous, anywhere ou cling.
contiguous requiert que les nouvelles extensions soient adjacentes aux extensions existantes. S'il y a suffisamment d'extensions libres pour satisfaire une requête d'allocation mais qu'une politique d'allocation normal ne les utilise pas , la politique d'allocation anywhere les utilisera, même si le fait de placer deux stripes sur le même volume physique réduit les performances. La politique cling place de nouvelles extensions sur le même volume physique que les extensions existantes dans le même stripe du volume logique. Ces politiques peuvent être changées en utilisant la commande vgchange.
normal sont requises uniquement dans des situations spéciales où vous devez spécifier une allocation d'extension inhabituelle ou non standard.
/dev avec la structure suivante :
/dev/vg/lv/
/dev/vg/lv/
myvg1 et myvg2, avec pour chacun d'entre eux trois volumes logiques appelés lvo1, lvo2 et lvo3, 6 fichiers spéciaux de périphériques seront créés :
4.3.2. Création de groupes de volumes au sein d'un cluster Copier lienLien copié sur presse-papiers!
vgchange, de la même manière que vous les créez sur un noeud simple.
-c n de la commande vgcreate.
vg1 qui contient les volumes physiques /dev/sdd1 et /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 Section 4.3.7, « Changement des paramètres du groupe de volumes ».
vgs, qui affiche l'attribut c quand le volume est clusterisé. La commande suivante affiche les attributs des groupes de volumes VolGroup00 et testvg1. Dans cet exemple, VolGroup00 n'est pas clusterisé, alors que testvg1 l'est, comme indiqué par l'attribut c sous l'en-tête Attr.
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
[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 Section 4.3.4, « Affichage des groupes de volumes »Section 4.9, « Rapport personnalisé pour LVM », and the vgs man page.
4.3.3. Ajout de volumes physiques à un groupe de volumes Copier lienLien copié sur presse-papiers!
vgextend command. The vgextend command increases a volume group's capacity by adding one or more free physical volumes.
/dev/sdf1 au groupe de volumes vg1.
vgextend vg1 /dev/sdf1
vgextend vg1 /dev/sdf1
4.3.4. Affichage des groupes de volumes Copier lienLien copié sur presse-papiers!
vgs et 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 Section 4.3.5, « Analyse des disques pour les groupes de volumes afin de construire le fichier de 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 Section 4.9, « Rapport personnalisé pour LVM ».
vgdisplay affiche les propriétés des groupes de volumes (la taille, les extensions, le nombre de volumes physiques, etc.) dans un format fixe. L'exemple suivant illustre la sortie d'une commande vgdisplay pour le groupe de volumes new_vg. Si vous ne spécifiez pas un groupe de volumes, tous les groupes de volumes existants sont affichés.
4.3.5. Analyse des disques pour les groupes de volumes afin de construire le fichier de cache Copier lienLien copié sur presse-papiers!
vgscan analyse tous les périphériques disques supportés dans le système afin de rechercher les volumes physiques LVM et les groupes de volumes. Cela permet de construire le fichier de cache LVM dans /etc/lvm/.cache, qui maintient une liste des périphériques LVM en cours.
vgscan au démarrage du système et à d'autres moments pendant les opérations LVM, par exemple lorsque vous exécutez la commande vgcreate ou lorsque LVM détecte une incohérence. Vous pourriez devoir exécuter la commande vgscan manuellement lorsque vous changez la configuration de votre matériel afin que les périphériques qui n'étaient pas présents au démarrage puissent être visibles par le système. Cela peut être nécessaire, par exemple, lorsque vous rajoutez de nouveaux disques au système sur un SAN ou si vous branchez "à chaud" un nouveau disque qui a été étiqueté en tant que volume physique.
lvm.conf file to restrict the scan to avoid specific devices. For information on using filters to control which devices are scanned, see Section 4.6, « Contrôler l'analyse des périphériques LVM avec les filtres ».
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
# 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. Suppression de volumes physiques à partir d'un groupe de volumes Copier lienLien copié sur presse-papiers!
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 afin de vous assurer que le volume physique ne soit pas utilisé par un volume logique.
pvmove. Utilisez ensuite la commande vgreduce pour supprimer le volume physique :
/dev/hda1 du groupe de volumes my_volume_group.
vgreduce my_volume_group /dev/hda1
# vgreduce my_volume_group /dev/hda1
4.3.7. Changement des paramètres du groupe de volumes Copier lienLien copié sur presse-papiers!
vgchange command. Primarily, however, this command is used to deactivate and activate volume groups, as described in Section 4.3.8, « Activation et désactivation des groupes de volumes »,
vg00 à 128.
vgchange -l 128 /dev/vg00
vgchange -l 128 /dev/vg00
vgchange, reportez-vous à la page de manuel vgchange(8).
4.3.8. Activation et désactivation des groupes de volumes Copier lienLien copié sur presse-papiers!
-a (--available) de la commande vgchange.
my_volume_group.
vgchange -a n my_volume_group
vgchange -a n my_volume_group
lvchange command, as described in Section 4.4.4, « Changement des paramètres d'un groupe de volumes logiques », For information on activating logical volumes on individual nodes in a cluster, see Section 4.8, « Activation des volumes logiques sur les noeuds individuels d'un cluster ».
4.3.9. Suppression de groupes de volumes Copier lienLien copié sur presse-papiers!
vgremove.
vgremove officevg Volume group "officevg" successfully removed
# vgremove officevg
Volume group "officevg" successfully removed
4.3.10. Fractionnement d'un groupe de volumes Copier lienLien copié sur presse-papiers!
vgsplit.
pvmove pour forcer le fractionnement.
smallvg du groupe de volumes d'origine bigvg.
vgsplit bigvg smallvg /dev/ram15 Volume group "smallvg" successfully split from "bigvg"
# vgsplit bigvg smallvg /dev/ram15
Volume group "smallvg" successfully split from "bigvg"
4.3.11. Combinaison de groupes de volumes Copier lienLien copié sur presse-papiers!
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 avec le groupe de volumes actif ou inactif databases en rapportant des informations d'exécution détaillées.
vgmerge -v databases my_vg
vgmerge -v databases my_vg
4.3.12. Sauvegarde des métadonnées d'un groupe de volumes Copier lienLien copié sur presse-papiers!
lvm.conf. Par défaut, la sauvegarde de métadonnées est stockée dans /etc/lvm/backup et les archives de métadonnées sont stockées dans /etc/lvm/archive. Vous pouvez manuellement sauvegarder les métadonnées dans /etc/lvm/backup avec la commande vgcfgbackup.
vgcfrestore restaure les métadonnées d'un groupe de volumes à partir de l'archive sur tous les volumes physiques du groupe de volumes.
vgcfgrestore command to recover physical volume metadata, see Section 6.4, « Recupération des métadonnées du volume physique ».
4.3.13. Renommer un groupe de volumes Copier lienLien copié sur presse-papiers!
vgrename pour renommer un groupe de volumes existant.
vg02 à 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. Déplacer un groupe de volumes sur un autre système Copier lienLien copié sur presse-papiers!
vgexport et vgimport.
vgexport rend un groupe de volumes inactif inaccessible au système afin que vous puissiez détacher ses volumes physiques. La commande vgimport rend un groupe de volumes accessible à une machine après que la commande vgexport l'ait rendu inactif.
- Assurez-vous qu'aucun utilisateur ne soit en train d'accéder aux fichiers sur les volumes actifs du groupe de volumes, puis démontez les volumes logiques.
- Utilisez l'argument
-a nde la commandevgchangepour marquer le groupe de volumes comme étant inactif, afin d'empêcher toute activité sur le groupe de volumes. - Utilisez la commande
vgexportafin d'exporter le groupe de volumes. Cela l'empêche d'être accédé par le système à partir duquel vous le supprimez.Après avoir exporté le groupe de volumes, le volume physique apparaîtra comme faisant partie d'un groupe de volumes exporté lorsque vous exécuterez la commandepvscan, comme dans l'exemple suivant.Copy to Clipboard Copied! Toggle word wrap Toggle overflow Lorsque le système est éteint, vous pouvez débrancher les disques qui composent le groupe de volumes et les connecter au nouveau système. - Lorsque les disques sont connectés au nouveau système, utilisez la commande
vgimportpour importer le groupe de volumes et le rendre ainsi accessible au nouveau système. - Activez le groupe de volumes avec l'argument
-a yde la commandevgchange. - Montez le système de fichiers afin qu'il puisse être utilisé.
4.3.15. Recréation du répertoire d'un groupe de volumes Copier lienLien copié sur presse-papiers!
vgmknodes. Cette commande vérifie les fichiers spéciaux LVM2 du répertoire /dev qui sont requis par les volumes logiques actifs. Elle crée tout fichier spécial manquant et supprime ceux qui ne sont plus utilisés.
vgmknodes dans la commande vgscan en spécifiant l'argument --mknodes.
4.4. Administration de volumes logiques Copier lienLien copié sur presse-papiers!
4.4.1. Création de volumes logiques Copier lienLien copié sur presse-papiers!
lvcreate. Vous pouvez créer des volumes linéaires, des volumes en mode stripe et des volumes en miroir, comme décrit dans les sous-sections suivantes.
lvol# est utilisé où # correspond au numéro interne du volume logique.
4.4.1.1. Création de volumes linéaires Copier lienLien copié sur presse-papiers!
vg1.
lvcreate -L 10G vg1
lvcreate -L 10G vg1
testlv dans le groupe de volumes testvg, créant ainsi le périphérique bloc /dev/testvg/testlv.
lvcreate -L1500 -n testlv testvg
lvcreate -L1500 -n testlv testvg
gfslv à partir des extensions libres du groupe de volumes vg0.
lvcreate -L 50G -n gfslv vg0
lvcreate -L 50G -n gfslv vg0
-l de la commande lvcreate pour spécifier la taille, en extensions, du volume logique. Vous pouvez également utiliser cet argument pour spécifier le pourcentage du groupe de volumes à utiliser pour le volume logique. La commande suivante crée un volume logique appellé mylv qui utilise 60% de l'espace total dans le groupe de volumes testvol.
lvcreate -l 60%VG -n mylv testvg
lvcreate -l 60%VG -n mylv testvg
-l de la commande lvcreate pour spécifier le pourcentage de l'espace libre restant dans le groupe de volumes comme la taille du volume logique. La commande suivante crée un volume logique appelé yourlv qui utilise tout l'espace non alloué dans le groupe de volumes 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 qui remplit le groupe de volumes testvg.
vgdisplay testvg | grep "Total PE" Total PE 10230 lvcreate -l 10230 testvg -n mylv
# vgdisplay testvg | grep "Total PE"
Total PE 10230
# lvcreate -l 10230 testvg -n mylv
lvcreate. La commande suivante crée un volume logique appelé testlv dans le groupe de volumes testvg, alloué à partir du volume physique /dev/sdg1.
lvcreate -L 1500 -ntestlv testvg /dev/sdg1
lvcreate -L 1500 -ntestlv testvg /dev/sdg1
/dev/sda1 et à partir des extensions 50 à 125 du volume physique /dev/sdb1 dans le groupe de volumes 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 et continue ensuite à étendre le volume logique à l'extension 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 Section 4.3.1, « Création de groupes de volumes ».
4.4.1.2. Création de volumes en mode stripe Copier lienLien copié sur presse-papiers!
-i de la commande lvcreate. Cela permet de déterminer le nombre de volumes physiques sur lesquels le volume logique sera "stripé". Le nombre de stripes ne peut pas être supérieur au nombre de volumes physiques dans le groupe de volumes (à moins que l'argument --alloc anywhere soit utilisé).
gfslv et est issu du groupe de volumes vg0.
lvcreate -L 50G -i2 -I64 -n gfslv vg0
lvcreate -L 50G -i2 -I64 -n gfslv vg0
stripelv et fait partie du groupe de volumes testvg. Le stripe utilisera les secteurs 0-50 de /dev/sda1 et les secteurs 50-100 de /dev/sdb1.
lvcreate -l 100 -i2 -nstripelv testvg /dev/sda1:0-50 /dev/sdb1:50-100 Using default stripesize 64.00 KB Logical volume "stripelv" created
# 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. Création de volumes en miroir Copier lienLien copié sur presse-papiers!
-m de la commande lvcreate. Si vous spécifiez l'argument -m1, vous créez un miroir qui produira deux copies du système de fichiers : un volume logique linéaire plus une copie. De façon similaire, spécifiez l'argument -m2 pour créer deux miroirs qui produiront trois copies du système de fichiers.
mirrorlv et est issu du groupe de volumes vg0 :
lvcreate -L 50G -m1 -n gfslv vg0
lvcreate -L 50G -m1 -n gfslv vg0
-R pour spécifier la taille des régions en Mo. LVM maintient un fichier journal afin de garder une trace des régions synchronisées avec le ou les miroirs. Par défaut, ce fichier journal est stocké sur le disque, il est donc persistant à travers les redémarrages. Cependant, vous pouvez utiliser l'argument --corelog afin que ce fichier soit stocké en mémoire ; vous n'aurez pas besoin de périphérique de fichiers journaux supplémentaire mais le miroir entier devra être resynchronisé à chaque redémarrage.
bigvg. Le volume logique est appelé ondiskmirvol et a un seul miroir. Le volume a une taille de 12Mo et garde le fichier journal du miroir en mémoire.
lvcreate -L 12MB -m1 --corelog -n ondiskmirvol bigvg Logical volume "ondiskmirvol" created
# lvcreate -L 12MB -m1 --corelog -n ondiskmirvol bigvg
Logical volume "ondiskmirvol" created
--alloc anywhere de la commande vgcreate. Cela risque de dégrader la performance, mais vous permet de créer un miroir, même si vous n'avez que deux dispositifs sous-jacents.
mirrorlv, et est issu du groupe de volumes vg0.
lvcreate -L 500M -m1 -n mirrorlv -alloc anywhere vg0
lvcreate -L 500M -m1 -n mirrorlv -alloc anywhere vg0
nosync pour indiquer qu'une synchronisation initiale à partir du premier périphérique n'est pas requise.
mirrorlv et est issu du groupe de volumes vg0. La première branche du miroir se trouve sur le périphérique /dev/sda1, la seconde sur /dev/sdb1 et le fichier journal du miroir se trouve sur /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 et est issu du groupe de volumes vg0. La première branche du miroir se trouve sur les extensions 0-499 du périphérique /dev/sda1, la seconde sur les extensions 0-499 du périphérique /dev/sdb1 et le fichier journal du miroir commence à l'extension 0 de /dev/sdc1. Il y a 1Mo d'extensions. Si une des extensions spécifiées a déjà été allouée, elle sera ignorée.
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
Note
4.4.1.4. Changement de la configuration du volume en miroir Copier lienLien copié sur presse-papiers!
lvconvert. Vous pouvez également utiliser cette commande pour reconfigurer les autres paramètres d'un volume logique existant, tels que corelog.
lvconvert command to restore the mirror. This procedure is provided in Section 6.3, « Récupération suite à un échec miroir LVM ».
vg00/lvol1 en un volume logique en miroir.
lvconvert -m1 vg00/lvol1
lvconvert -m1 vg00/lvol1
vg00/lvol1 en un volume logique linéaire, en supprimant la branche du miroir.
lvconvert -m0 vg00/lvol1
lvconvert -m0 vg00/lvol1
4.4.2. Numéros de périphérique persistants Copier lienLien copié sur presse-papiers!
lvcreate et lvchange en utilisant les arguments suivants :
--persistent y --major major --minor minor
--persistent y --major major --minor minor
fsid dans le fichier d'exports pourrait vous empêcher de définir un numéro de périphérique persistant dans LMV.
4.4.3. Redimensionnement des volumes logiques Copier lienLien copié sur presse-papiers!
lvreduce. Si le volume logique contient un système de fichiers, commencez par réduire la taille du système de fichiers (ou utilisez l'interface utilisateur graphique LVM) afin que le volume logique ait un taille identique ou supérieur à ce dernier.
lvol1 de 3 extensions logiques dans le groupe de volumes vg00.
lvreduce -l -3 vg00/lvol1
lvreduce -l -3 vg00/lvol1
4.4.4. Changement des paramètres d'un groupe de volumes logiques Copier lienLien copié sur presse-papiers!
lvchange. Pour obtenir une liste des paramètres que vous pouvez changer, reportez-vous à la page de manuel 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 Section 4.3.7, « Changement des paramètres du groupe de volumes ».
lvol1 du groupe de volumes vg00 en lecture seulement.
lvchange -pr vg00/lvol1
lvchange -pr vg00/lvol1
4.4.5. Renommer les volumes logiques Copier lienLien copié sur presse-papiers!
lvrename.
lvold du groupe de volumes de vg02 à 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. Suppression de volumes logiques Copier lienLien copié sur presse-papiers!
lvremove. Vous devez fermer un volume logique avec la commande umount avant qu'il puisse être supprimé. De plus, dans un environnement en clusters, vous devez désactiver un volume logique avant qu'il puisse être supprimé.
/dev/testvg/testlv du groupe de volumes testvg. Notez que, dans ce cas, le volume logique n'a pas été désactivé.
lvremove /dev/testvg/testlv Do you really want to remove active logical volume "testlv"? [y/n]: y Logical volume "testlv" successfully removed
[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, dans quel cas vous ne verriez pas l'invite vérifiant si vous voulez supprimer un volume logique actif.
4.4.7. Affichage de volumes logiques Copier lienLien copié sur presse-papiers!
lvs, lvdisplay et 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 Section 4.9, « Rapport personnalisé pour LVM ».
lvdisplay affiche les propriétés des volumes logiques (la taille, la structure, le mappage) dans un format fixe.
lvol2 dans vg00. Si des instantanés de volumes logiques ont été créés pour ce volume logique d'origine, la commande affiche une liste de tous les instantanés de volumes logiques et de leur statut (actif ou inactif).
lvdisplay -v /dev/vg00/lvol2
lvdisplay -v /dev/vg00/lvol2
lvscan recherche tous les volumes logiques du système et les affiche, comme dans l'exemple suivant.
lvscan ACTIVE '/dev/vg0/gfslv' [1.46 GB] inherit
# lvscan
ACTIVE '/dev/vg0/gfslv' [1.46 GB] inherit
4.4.8. Augmentez la taille des volumes logiques Copier lienLien copié sur presse-papiers!
lvextend.
/dev/myvg/homevol de 12 gigaoctets.
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
# 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 -- 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
# 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, vous pouvez utiliser l'argument -l de la commande lvextend afin de spécifier le nombre d'extensions pour l'augmentation de la taille du volume logique. Vous pouvez également utiliser cet argument pour spécifier un pourcentage du groupe de volumes ou un pourcentage de l'espace libre restant dans le groupe de volumes. La commande suivante étend le volume logique appelé testlv afin de remplir tout l'espace non alloué du groupe de volumes myvg.
lvextend -l +100%FREE /dev/myvg/testlv Extending logical volume testlv to 68.59 GB Logical volume testlv successfully resized
[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. Augmenter la taille d'un volume en mode stripe Copier lienLien copié sur presse-papiers!
vg qui se compose deux volumes physiques sous-jacents, comme l'illustre la commande vgs suivante.
vgs VG #PV #LV #SN Attr VSize VFree vg 2 0 0 wz--n- 271.31G 271.31G
# vgs
VG #PV #LV #SN Attr VSize VFree
vg 2 0 0 wz--n- 271.31G 271.31G
vgs VG #PV #LV #SN Attr VSize VFree vg 2 1 0 wz--n- 271.31G 0
# vgs
VG #PV #LV #SN Attr VSize VFree
vg 2 1 0 wz--n- 271.31G 0
lvextend ait échoué.
4.4.10. Réduire la taille des volumes logiques Copier lienLien copié sur presse-papiers!
lvreduce pour réduire sa taille. Après avoir réduit la taille du volume, remontez le système de fichiers.
Avertissement
lvol1 de 3 extensions logiques dans le groupe de volumes vg00.
lvreduce -l -3 vg00/lvol1
lvreduce -l -3 vg00/lvol1
4.5. Création d'instantanés de volumes Copier lienLien copié sur presse-papiers!
-s de la commande lvcreate pour créer un instantané de volume. Un instantané du volume est en mode écriture.
Note
/dev/vg00/snap. Cela crée un instantané du volume logique d'origine appelé /dev/vg00/lvol1. Si le volume logique d'origine contient un système de fichiers, vous pouvez monter l'instantané du volume logique sur un répertoire arbitraire afin d'accéder au contenu du système de fichiers pour démarrer une sauvegarde pendant que le système de fichiers d'origine continue à être mis à jour.
lvcreate --size 100M --snapshot --name snap /dev/vg00/lvol1
lvcreate --size 100M --snapshot --name snap /dev/vg00/lvol1
lvdisplay afin de générer une sortie qui inclue une liste de tous les instantanés de volumes logiques et leur statut (actif ou inactif).
/dev/new_vg/lvol0, pour lequel un instantané de volume /dev/new_vg/newvgsnap a été créé.
lvs affiche le volume d'origine et le pourcentage actuel utilisé par chaque instantané de volume. L'exemple suivant illustre la sortie par défaut de la commande lvs pour un système qui comprend le volume logique /dev/new_vg/lvol0, pour lequel un instantané de volume /dev/new_vg/newvgsnap a été créé.
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
# 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
Note
lvs afin de s'assurer qu'il ne soit pas plein. Un instantané qui est rempli à 100% est complètement perdu, car l'écriture sur les parties inchangées du volume d'origine ne pourra pas réussir sans que l'instantané soit corrompu.
4.6. Contrôler l'analyse des périphériques LVM avec les filtres Copier lienLien copié sur presse-papiers!
vgscan est exécutée afin d'analyser les étiquettes LVM des périphériques blocs du système, pour déterminer les volumes physiques, lire les métadonnées et construire une liste de groupes de volumes. Les noms des volumes physiques sont stockés dans le fichier de cache de chaque noeud du système, /etc/lvm/.cache. Les commandes subséquentes peuvent lire ce fichier afin de ne pas les analyser à nouveau.
lvm.conf. Les filtres se composent d'une série d'expressions régulières simples, appliquée sur les noms de périphériques au sein du répertoire /dev afin de déterminer s'il faut accepter ou refuser le périphérique bloc trouvé.
a/loop/ est identique à a/.*loop.*/ et correspondrait à /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 Annexe B, Les fichiers de configuration LVM and the lvm.conf(5) man page.
4.7. Déplacement des données en ligne Copier lienLien copié sur presse-papiers!
pvmove.
pvmove divise les données devant être déplacées dans des sections et crée un miroir temporaire afin de déplacer chaque section. Pour davantage d'informations à propos de la commande pvmove, reportez-vous à la page de manuel 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 Section 4.8, « Activation des volumes logiques sur les noeuds individuels d'un cluster ».
/dev/sdc1 vers les autres volumes physiques libres du groupe de volumes :
pvmove /dev/sdc1
pvmove /dev/sdc1
MyLV.
pvmove -n MyLV /dev/sdc1
pvmove -n MyLV /dev/sdc1
pvmove peut prendre du temps, vous pourriez vouloir l'exécuter en arrière plan afin de ne pas afficher sa progression au premier plan. La commande suivante déplace, en arrière plan, toutes les extensions allouées au volume physique /dev/sdc1 vers /dev/sdf1.
pvmove -b /dev/sdc1 /dev/sdf1
pvmove -b /dev/sdc1 /dev/sdf1
pvmove -i5 /dev/sdd1
pvmove -i5 /dev/sdd1
4.8. Activation des volumes logiques sur les noeuds individuels d'un cluster Copier lienLien copié sur presse-papiers!
pvmove n'est pas dédiée à un cluster et requiert un accès exclusif au volume. Les instantanés LVM requiert également un accès exclusif au volume.
lvchange -aey. Alternativement, vous pouvez utiliser la commande lvchange -aly pour activer des volumes logiques seulement sur le noeud local mais pas de manière exclusive. Vous pouvez par la suite les activer sur des noeuds supplémentaires de manière concurrente.
4.9. Rapport personnalisé pour LVM Copier lienLien copié sur presse-papiers!
pvs, lvs et vgs. Les rapports que ces commandes génèrent inclus une ligne de sortie pour chaque objet. Chaque ligne contient une liste ordonnée de champs de propriétés associés à chaque objet. Il existe cinq manières permettant de sélectionner les objets devant être rapportés : par volume physique, par groupe de volumes, par volume logique, par segment de volume physique et par segment de volume logique.
- Un résumé des arguments des commandes que vous pouvez utiliser pour contrôler le format du rapport généré.
- Une liste des champs que vous pouvez sélectionner pour chaque objet LVM.
- Un résumé des arguments des commandes que vous pouvez utiliser pour trier le rapport généré.
- Des instructions pour la spécification des unités de la sortie du rapport.
4.9.1. Contrôle du format Copier lienLien copié sur presse-papiers!
pvs, lvs ou vgs, ces commandes déterminent l'ensemble de champs à afficher par défaut et l'ordre de tri. Vous pouvez contrôler la sortie de ces commandes avec les arguments suivants :
- Vous pouvez modifier les champs à afficher en utilisant l'argument
-o. La sortie suivante illustre par exemple l'affichage par défaut de la commandepvs(qui affiche des informations à propos des volumes physiques).Copy to Clipboard Copied! Toggle word wrap Toggle overflow La commande suivante affiche uniquement le nom et la taille du volume physique.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Vous pouvez ajouter un champ à la sortie avec le signe plus (+), qui est utilisé en association avec l'argument -o.L'exemple suivant affiche l'UUID du volume physique en plus des champs par défaut.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - L'ajout de l'argument
-và une commande permet d'inclure des champs supplémentaires. La commandepvs -vaffichera par exemple les champsDevSizeetPV UUIDen plus des champs par défaut.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - L'argument
--noheadingssupprime la ligne d'en-têtes. Ceci peut être utile pour écrire des scripts.L'exemple suivant utilise l'argument--noheadingsen association avec l'argumentpv_nameafin de générer une liste de tous les volumes physiques.pvs --noheadings -o pv_name /dev/sdb1 /dev/sdc1 /dev/sdd1
# pvs --noheadings -o pv_name /dev/sdb1 /dev/sdc1 /dev/sdd1Copy to Clipboard Copied! Toggle word wrap Toggle overflow - L'argument
--separator separatorutilise l'élément separator afin séparer chaque champ. Ceci peut être utile dans un script si vous exécutez une commandegrepsur la sortie.L'exemple suivant sépare les champs par défaut de la sortie générée par la commandepvspar un signe égal (=).Copy to Clipboard Copied! Toggle word wrap Toggle overflow Pour maintenir les champs alignés lors de l'utilisation de l'argumentseparator, utilisez-le en association avec l'argument--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 Section 6.2, « Affichage d'informations à propos des périphériques ayant échoué. ».
pvs(8), vgs(8) et lvs(8).
4.9.2. Sélection d'objets Copier lienLien copié sur presse-papiers!
pvs, vgs et lvs.
pvs, name signifie pv_name alors qu'avec la commande vgs, name signifie vg_name.
pvs -o pv_free.
La commande pvs Copier lienLien copié sur presse-papiers!
pvs command, along with the field name as it appears in the header display and a description of the field.
| Argument | En-tête | Description |
|---|---|---|
dev_size | DevSize | La taille du périphérique sous-jacent sur lequel le volume physique a été créé |
pe_start | 1st PE | L'offset au début de la première extension physique dans le périphérique sous-jacent |
pv_attr | Attr | Le statut du volume physique : (a)llocatable ou e(x)ported |
pv_fmt | Fmt | Le format des métadonnées du volume physique (lvm2 ou lvm1) |
pv_free | PFree | L'espace libre restant sur le volume physique |
pv_name | PV | Le nom du volume physique |
pv_pe_alloc_count | Alloc | Le nombre d'extensions physiques utilisées |
pv_pe_count | PE | Le nombre d'extensions physiques |
pvseg_size | SSize | La taille du segment du volume physique |
pvseg_start | Start | L'extension physique de départ du segment de volume physique |
pv_size | PSize | La taille du volume physique |
pv_tags | PV Tags | Les balises LVM associées au volume physique |
pv_used | Used | La quantité d'espace utilisée sur le volume physique |
pv_uuid | PV UUID | L'UUID du volume physique |
pvs affiche par défaut les champs suivants : pv_name, vg_name, pv_fmt, pv_attr, pv_size, pv_free. L'affichage est trié par pv_name.
-v avec la commande pvs pour ajouter les champs suivants à l'affichage par défaut : dev_size, pv_uuid.
--segments de la commande pvs pour afficher des informations à propos de chaque segment de volume physique. Un segment est un groupe d'extensions. Cet affichage peut être utile afin de voir si votre volume logique est fragmenté.
pvs --segments affiche par défaut les champs suivants : pv_name, vg_name, pv_fmt, pv_attr, pv_size, pv_free, pvseg_start, pvseg_size. L'affichage est trié par pv_name et pvseg_size au sein du volume physique.
pvs -a pour afficher les périphériques détectés par LVM qui n'ont pas été initialisés comme des volumes physiques LVM.
La commande vgs Copier lienLien copié sur presse-papiers!
vgs command, along with the field name as it appears in the header display and a description of the field.
| Argument | En-tête | Description |
|---|---|---|
lv_count | #LV | Le nombre de volumes logiques que le groupe de volumes peut contenir |
max_lv | MaxLV | Le nombre maximum de volumes logiques autorisés dans le groupe de volumes (0 si illimité) |
max_pv | MaxPV | Le nombre maximum de volumes physiques autorisés dans le groupe de volumes (0 si illimité) |
pv_count | #PV | Le nombre de volumes physiques qui définit le groupe de volumes |
snap_count | #SN | Le nombre d'instantanés que le groupe de volumes contient |
vg_attr | Attr | Le statut du groupe de volumes : (w)riteable, (r)eadonly, resi(z)eable, e(x)ported, (p)artial et (c)lustered. |
vg_extent_count | #Ext | Le nombre d'extensions physiques dans le groupe de volumes |
vg_extent_size | Ext | La taille des extensions physiques dans le groupe de volumes |
vg_fmt | Fmt | Le format des métadonnées du groupe de volumes (lvm2 or lvm1) |
vg_free | VFree | La taille de l'espace libre restant dans le groupe de volumes |
vg_free_count | Free | Le nombre d'extensions physiques libres dans le groupe de volumes |
vg_name | VG | Le nom du groupe de volumes |
vg_seqno | Seq | Le nombre représentant la révision du groupe de volumes |
vg_size | VSize | La taille du groupe de volumes |
vg_sysid | SYS ID | L'ID Système LVM1 |
vg_tags | VG Tags | Les balises LVM associées au groupe de volumes |
vg_uuid | VG UUID | L'UUID du groupe de volumes |
vgs affiche par défaut les champs suivants : vg_name, pv_count, lv_count, snap_count, vg_attr, vg_size, vg_free. L'affichage est trié par vg_name.
vgs VG #PV #LV #SN Attr VSize VFree new_vg 3 1 1 wz--n- 51.42G 51.36G
# vgs
VG #PV #LV #SN Attr VSize VFree
new_vg 3 1 1 wz--n- 51.42G 51.36G
-v de la commande vgs afin d'ajouter les champs suivants à l'affichage par défaut : vg_extent_size, vg_uuid.
La commande lvs Copier lienLien copié sur presse-papiers!
lvs command, along with the field name as it appears in the header display and a description of the field.
| Argument | En-tête | Description | ||||||
|---|---|---|---|---|---|---|---|---|
| Chunk | L'unité de taille dans un instantané de volume | ||||||
copy_percent | Copy% | Le pourcentage de synchronisation d'un volume logique en miroir, également utilisé lorsque les extensions physiques sont déplacées avec la commande pv_move | ||||||
devices | Devices | Les périphériques sous-jacents qui composent le volume logique : les volumes physiques, les volumes logiques et les extensions physiques et logiques de départ | ||||||
lv_attr | Attr | Le statut du volume logique. Voici les bits des attributs du volume logique :
| ||||||
lv_kernel_major | KMaj | Le numéro de périphérique majeur du volume logique (-1 si inactif) | ||||||
lv_kernel_minor | KMIN | Le numéro de périphérique mineur du volume logique (-1 si inactif) | ||||||
lv_major | Maj | Le numéro de périphérique majeur persistant du volume logique (-1 s'il n'est pas spécifié) | ||||||
lv_minor | Min | Le numéro de périphérique mineur persistant du volume logique (-1 s'il n'est pas spécifié) | ||||||
lv_name | LV | Le nom du volume logique | ||||||
lv_size | LSize | La taille du volume logique | ||||||
lv_tags | LV Tags | Les balises LVM associées au volume logique | ||||||
lv_uuid | LV UUID | L'UUID du volume logique | ||||||
mirror_log | Log | Le périphérique sur lequel réside le fichier journal du miroir | ||||||
modules | Modules | La cible device-mapper du noyau correspondant nécessaire pour utiliser le volume logique | ||||||
move_pv | Move | Le volume physique source d'un volume logique temporaire créé avec la commande pvmove | ||||||
origin | Origin | Le périphérique d'origine de l'instantané de volume | ||||||
| Region | L'unité de taille du volume logique en miroir | ||||||
seg_count | #Seg | Le nombre de segments dans le volume logique | ||||||
seg_size | SSize | La taille des segments dans le volume logique | ||||||
seg_start | Start | L'offset du segment dans le volume logique | ||||||
seg_tags | Seg Tags | Les balises LVM associées aux segments du volume logique | ||||||
segtype | Type | Le type de segment d'un volume logique (par exemple : en miroir, en mode stripe, linéaire) | ||||||
snap_percent | Snap% | Pourcentage d'un instantané de volume en cours d'utilisation | ||||||
stripes | #Str | Le nombre de stripes ou miroirs dans un volume logique | ||||||
| Stripe | La taille d'un stripe dans volume logique en mode stripe |
lvs affiche par défaut les champs suivants : lv_name, vg_name, lv_attr, lv_size, origin, snap_percent, move_pv, mirror_log, copy_percent. L'affichage par défaut est trié par vg_name et lv_name au sein du groupe de volumes.
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
# 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 de la commande lvs pour ajouter les champs suivants à l'affichage par défaut : seg_count, lv_major, lv_minor, lv_kernel_major, lv_kernel_minor, lv_uuid.
--segments de la commande lvs pour que les colonnes par défaut mettent en évidence les informations à propos des segments. Lorsque vous utilisez l'argument segments, le préfixe seg est optionnel. La commande lvs --segments affiche par défaut les champs suivants : lv_name, vg_name, lv_attr, stripes, segtype, seg_size. L'affichage par défaut est trié par vg_name, lv_name au sein du groupe de volumes et par seg_start au sein du volume logique. Si les volumes logiques étaient fragmentés, la sortie de cette commande afficherait ce qui suit.
-v de la commande lvs --segments pour ajouter les champs suivants à l'affichage par défaut : seg_start, stripesize, chunksize.
lvs sur un système avec un volume logique configuré, suivi par la sortie par défaut de la commande lvs avec l'argument segments spécifié.
4.9.3. Trier des rapports LVM Copier lienLien copié sur presse-papiers!
lvs, vgs et pvs doit être générée et stockée en interne afin que les colonnes puissent être triées et alignées correctement. Vous pouvez spécifier l'argument --unbuffered pour afficher des sorties non triées aussitôt qu'elles sont générées.
-O de l'une de ces commandes. Il n'est pas nécessaire d'inclure ces champs au sein de la sortie elle-même.
pvs qui affiche le nom, la taille et l'espace libre du volume physique.
-O par le caractère -.
4.9.4. Spécification des unités Copier lienLien copié sur presse-papiers!
--units de la commande de rapport. Vous pouvez spécifier : (b)ytes, (k)ilobytes, (m)egabytes, (g)igabytes, (t)erabytes, (e)xabytes, (p)etabytes et (h)uman-readable. L'affichage par défaut est (h)uman-readable. Vous pouvez surcharger cette valeur par défaut en définissant le paramètre units dans la section global du fichier de configuration lvm.conf
pvs en méga-octets plutôt qu'en giga-octets.
pvs comme un nombre de secteurs ("sectors").
pvs avec des unités de 4 méga-octets.
Chapitre 5. Exemples de configuration LVM Copier lienLien copié sur presse-papiers!
5.1. Création d'un volume logique LVM sur trois disques Copier lienLien copié sur presse-papiers!
new_logical_volume qui se compose des disques /dev/sda1, /dev/sdb1 et /dev/sdc1.
5.1.1. Création de volumes physiques Copier lienLien copié sur presse-papiers!
Avertissement
/dev/sda1, /dev/sdb1 et /dev/sdc1.
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
[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. Création d'un groupe de volumes Copier lienLien copié sur presse-papiers!
new_vol_group.
vgcreate new_vol_group /dev/sda1 /dev/sdb1 /dev/sdc1 Volume group "new_vol_group" successfully created
[root@tng3-1 ~]# vgcreate new_vol_group /dev/sda1 /dev/sdb1 /dev/sdc1
Volume group "new_vol_group" successfully created
vgs pour afficher les attributs du nouveau groupe de volumes.
vgs VG #PV #LV #SN Attr VSize VFree new_vol_group 3 0 0 wz--n- 51.45G 51.45G
[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. Création du volume logique Copier lienLien copié sur presse-papiers!
new_logical_volume à partir du groupe de volumes new_vol_group. Un volume logique qui utilise 2Go du groupe de volumes sera créé.
lvcreate -L2G -n new_logical_volume new_vol_group Logical volume "new_logical_volume" created
[root@tng3-1 ~]# lvcreate -L2G -n new_logical_volume new_vol_group
Logical volume "new_logical_volume" created
5.1.4. Création du système de fichiers Copier lienLien copié sur presse-papiers!
5.2. Création d'un volume logique en mode stripe Copier lienLien copié sur presse-papiers!
striped_logical_volume qui distribue les données à travers les disques /dev/sda1, /dev/sdb1 et /dev/sdc1.
5.2.1. Création de volumes physiques Copier lienLien copié sur presse-papiers!
Avertissement
/dev/sda1, /dev/sdb1 et /dev/sdc1.
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
[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. Création d'un groupe de volumes Copier lienLien copié sur presse-papiers!
striped_vol_group.
vgcreate striped_vol_group /dev/sda1 /dev/sdb1 /dev/sdc1 Volume group "striped_vol_group" successfully created
[root@tng3-1 ~]# vgcreate striped_vol_group /dev/sda1 /dev/sdb1 /dev/sdc1
Volume group "striped_vol_group" successfully created
vgs pour afficher les attributs du nouveau groupe de volumes.
vgs VG #PV #LV #SN Attr VSize VFree striped_vol_group 3 0 0 wz--n- 51.45G 51.45G
[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. Création du volume logique Copier lienLien copié sur presse-papiers!
striped_logical_volume à partir du groupe de volumes striped_vol_group. Cet exemple crée un volume logique de 2 giga-octets, avec trois bandes de 4 kilo-octets chacune.
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
[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. Création du système de fichiers Copier lienLien copié sur presse-papiers!
5.3. Partager un groupe de volumes Copier lienLien copié sur presse-papiers!
mylv est créé à partir du groupe de volumes myvol, qui se compose de trois volumes physiques, /dev/sda1, /dev/sdb1 et /dev/sdc1.
myvg se composera de /dev/sda1 et /dev/sdb1. Un deuxième groupe de volumes, yourvg, se composera de /dev/sdc1.
5.3.1. Déterminer l'espace libre Copier lienLien copié sur presse-papiers!
pvscan pour déterminer la quantité d'espace libre disponible dans le groupe de volumes.
5.3.2. Déplacer les données Copier lienLien copié sur presse-papiers!
/dev/sdc1 vers /dev/sdb1 avec la commande pvmove. La commande pvmove peut prendre du temps à s'exécuter.
/dev/sdc1 est libre.
5.3.3. Diviser le groupe de volumes Copier lienLien copié sur presse-papiers!
yourvg, utilisez la commande vgsplit pour diviser le groupe de volume myvg.
lvchange ou la commande vgchange. La commande suivante désactive le volume logique mylv et divise ensuite le groupe de volumes yourvg à partir de myvg, en déplaçant le volume physique /dev/sdc1 dans le nouveau groupe de volumes yourvg.
lvchange -a n /dev/myvg/mylv vgsplit myvg yourvg /dev/sdc1 Volume group "yourvg" successfully split from "myvg"
[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 pour afficher les attributs des deux groupes de volumes.
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
[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. Création d'un nouveau volume logique Copier lienLien copié sur presse-papiers!
yourlv.
lvcreate -L5G -n yourlv yourvg Logical volume "yourlv" created
[root@tng3-1 ~]# lvcreate -L5G -n yourlv yourvg
Logical volume "yourlv" created
5.3.5. Créer un nouveau système de fichiers et monter le nouveau volume logique Copier lienLien copié sur presse-papiers!
5.3.6. Activation et montage du volume logique d'origine Copier lienLien copié sur presse-papiers!
mylv, vous devez le réactiver avant de pouvoir le monter.
5.4. Suppression d'un disque du volume logique Copier lienLien copié sur presse-papiers!
5.4.1. Déplacer les extensions vers des volumes physiques existants Copier lienLien copié sur presse-papiers!
myvg.
/dev/sdb1 afin de le supprimer du groupe de volumes.
pvmove sans option sur le périphérique que vous voulez supprimer afin que les extensions soient distribuées sur les autres périphériques.
pvmove ait été exécutée, les extensions sont distribuées comme ci-dessous :
vgreduce pour supprimer le volume physique /dev/sdb1 du groupe de volumes.
5.4.2. Déplacer les extensions vers un nouveau disque Copier lienLien copié sur presse-papiers!
myvg comme ci-dessous :
/dev/sdb1> vers un nouveau périphérique, /dev/sdd1.
5.4.2.1. Création du nouveau volume physique Copier lienLien copié sur presse-papiers!
/dev/sdd1.
pvcreate /dev/sdd1 Physical volume "/dev/sdd1" successfully created
[root@tng3-1 ~]# pvcreate /dev/sdd1
Physical volume "/dev/sdd1" successfully created
5.4.2.2. Ajout du nouveau volume physique au groupe de volumes Copier lienLien copié sur presse-papiers!
/dev/sdd1 au groupe de volumes existant myvg.
5.4.2.3. Déplacer les données Copier lienLien copié sur presse-papiers!
pvmove pour déplacer les données de /dev/sdb1 vers /dev/sdd1.
5.4.2.4. Suppression de l'ancien volume physique du groupe de volumes. Copier lienLien copié sur presse-papiers!
/dev/sdb1, vous pouvez le supprimer du groupe de volumes.
vgreduce myvg /dev/sdb1 Removed "/dev/sdb1" from volume group "myvg"
[root@tng3-1 ~]# vgreduce myvg /dev/sdb1
Removed "/dev/sdb1" from volume group "myvg"
Chapitre 6. Résolution de problèmes LVM Copier lienLien copié sur presse-papiers!
6.1. Diagnostiques de résolution de problèmes Copier lienLien copié sur presse-papiers!
- Utilisez l'argument
-v,-vv,-vvvou-vvvvavec n'importe quelle commande afin d'augmenter le niveau de verbosité de sa sortie. - 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
-vvvvargument. 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. - Exécutez la commande
lvmdumpafin d'obtenir des informations à des fins de diagnostic. Pour davantage d'informations, reportez-vous à la page de manuellvmdump(8). - Exécutez la commande
lvs -v,pvs -aoudmsetup info -cpour davantage d'informations système. - Examinez la dernière sauvegarde de métadonnées dans
/etc/lvm/backupet les versions archivées dans/etc/lvm/archive. - Vérifiez les informations de configuration en exécutant la commande
lvm dumpconfig. - Vérifiez le fichier
.cachedans/etc/lvmpour savoir quels sont les périphériques qui disposent de volumes physiques.
6.2. Affichage d'informations à propos des périphériques ayant échoué. Copier lienLien copié sur presse-papiers!
-P des commandes lvs et vgs afin d'afficher des informations à propos d'un périphérique ayant échoué qui, autrement, n'apparaîtraient pas dans la sortie. Par exemple, si l'un des périphériques qui compose le groupe de volumes vg a échoué, la commande vgs pourrait afficher la sortie suivante.
vgs -o +devices Volume group "vg" not found
[root@link-07 tmp]# vgs -o +devices
Volume group "vg" not found
-P avec la commande vgs, le groupe de volumes sera toujours inutilisable mais vous pourrez voir davantage d'informations à propos du périphérique ayant échoué.
lvs sans l'argument -P affiche la sortie suivante.
lvs -a -o +devices Volume group "vg" not found
[root@link-07 tmp]# lvs -a -o +devices
Volume group "vg" not found
-P vous affichez les volumes logiques qui ont échoué.
pvs et lvs avec l'argument -P, suite à l'échec d'une branche d'un volume logique en miroir.
6.3. Récupération suite à un échec miroir LVM Copier lienLien copié sur presse-papiers!
vg et le volume en miroir groupfs.
lvs pour vérifier la disposition du volume en miroir et des périphériques sous-jacents pour la branche du miroir et le fichier journal du miroir. Notez que dans le premier exemple, le miroir n'est pas encore complètement synchronisé ; vous devriez attendre jusqu'à ce que le champ Copy% affiche 100.00 avant de continuer.
/dev/sda1 échoue. Toute activité d'écriture sur le volume en miroir permet à LVM de détecter le miroir échouant. Lorsque cela se produit, LVM convertit le miroir en un volume linéaire unique. Dans ce cas, pour déclencher la conversion, nous exécutons une commande dd.
dd if=/dev/zero of=/dev/vg/groupfs count=10 10+0 records in 10+0 records out
[root@link-08 ~]# dd if=/dev/zero of=/dev/vg/groupfs count=10
10+0 records in
10+0 records out
lvs pour vérifier que le périphérique soit un périphérique linéaire. À cause du disque ayant échoué, des erreurs d'E/S se produisent.
pvcreate command.
lvconvert -m 1 /dev/vg/groupfs /dev/sda1 /dev/sdb1 /dev/sdc1 Logical volume mirror converted.
[root@link-08 ~]# lvconvert -m 1 /dev/vg/groupfs /dev/sda1 /dev/sdb1 /dev/sdc1
Logical volume mirror converted.
lvs pour vérifier si le miroir a été restauré.
6.4. Recupération des métadonnées du volume physique Copier lienLien copié sur presse-papiers!
Avertissement
/etc/lvm/archive. Recherchez dans le fichier VolumeGroupName_xxxx.vg les dernières métadonnées LVM archivées valides pour le groupe de volumes.
partial (-P) vous pourrez trouver l'UUID du volume physique corrompu manquant.
--uuid et --restorefile de la commande pvcreate pour restaurer le volume physique. L'exemple suivant étiquette le périphérique /dev/sdh1 en tant que volume physique avec l'UUID indiqué ci-dessus, FmGRh3-zhok-iVI8-7qTD-S5BI-MAEN-NYM5Sk. Cette commande restaure l'étiquette du volume physique avec les informations de métadonnées contenues dans VG_00050.vg, les métadonnées archivées les plus récentes pour le groupe de volumes. L'argument restorefile permet à la commande pvcreate de rendre le nouveau volume physique compatible avec l'ancien sur le groupe de volumes, en s'assurant que les nouvelles métadonnées ne soient pas placées là où l'ancien volume physique stockait ses données (cela pourrait par exemple se produire si la commande d'origine pvcreate avait utilisé les arguments en ligne de commande qui permettent de contrôler l'emplacement des métadonnées ou si le volume physique avait été créé avec une version logicielle différente qui utilise d'autres paramètres par défaut). La commande pvcreate surcharge uniquement les zones de métadonnées LVM et n'affecte pas les zones de données existantes.
pvcreate --uuid "FmGRh3-zhok-iVI8-7qTD-S5BI-MAEN-NYM5Sk" --restorefile /etc/lvm/archive/VG_00050.vg /dev/sdh1 Physical volume "/dev/sdh1" successfully created
[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 Restored volume group VG
[root@link-07 backup]# vgcfgrestore VG
Restored volume group VG
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)
[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 pour récupérer ces données.
6.5. Remplacement d'un volume physique manquant Copier lienLien copié sur presse-papiers!
--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. Supprimer les volumes physiques perdus d'un groupe de volumes Copier lienLien copié sur presse-papiers!
--partial de la commande vgchange. Vous pouvez supprimer tous les volumes logiques utilisant ce volume physique à partir du groupe de volumes avec l'argument --removemissing de la commande vgreduce.
vgreduce avec l'argument --test pour vérifier ce que vous supprimez.
vgreduce est réservible si vous utilisez immédiatement la commande vgcfgrestore afin de restaurer les métadonnées du groupe de volumes à leur état précédent. Par exemple, si vous avez utilisé l'argument --removemissing de la commande vgreduce sans l'argument --test et que vous vous apercevez d'avoir supprimé les volumes logiques que vous vouliez garder, vous pouvez toujours remplacer le volume physique et utiliser une autre commande vgcfgrestore pour restaurer le groupe de volumes à son état précédent.
6.7. Extensions libres insuffisantes pour un volume logique Copier lienLien copié sur presse-papiers!
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 inclut par défaut cette ligne de sortie qui indique les extensions physiques libres.
vgdisplay --- Volume group --- ... Free PE / Size 8780 / 34.30 GB
# vgdisplay
--- Volume group ---
...
Free PE / Size 8780 / 34.30 GB
vg_free_count et vg_extent_count de la commande vgs pour afficher les extensions libres et le nombre total d'extensions.
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
[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 VG #PV #LV #SN Attr VSize VFree Free #Ext testvg 2 1 0 wz--n- 34.30G 0 0 8780
# 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 Section 4.4.1.1, « Création de volumes linéaires ».
Chapitre 7. Administration LVM avec l'interface utilisateur graphique LVM Copier lienLien copié sur presse-papiers!
system-config-lvm. Le chapitre LVM du Guide de déploiement de Red Hat Enterprise Linux fournit des instructions, étape par étape, afin de configurer un volume logique LVM en utilisant cet utilitaire.
Annexe A. Device Mapper (Mappeur de périphériques) Copier lienLien copié sur presse-papiers!
dmraid utilisent le mappeur de périphériques. L'interface d'application du mappeur de périphériques est l'appel système ioctl. L'interface d'utilisateur est la commande dmsetup.
dmsetup command. For information about the format of devices in a mapping table, see Section A.1, « Mappages de tables de périphériques ». For information about using the dmsetup command to query a device, see Section A.2, « La commande dmsetup ».
A.1. Mappages de tables de périphériques Copier lienLien copié sur presse-papiers!
start length mapping [mapping_parameters...]
start length mapping [mapping_parameters...]
start doit être égal à zéro. Les paramètres start + length d'une ligne, doivent être égaux au paramètre start de la lige suivante. Les paramètres de mappage spécifiés sur une ligne de table de mappage dépendent du type de mapping spécifié sur la ligne.
/dev/hda) ou par un nombre majeur ou mineur sous les formats suivants major:minor. Le format major:minor est le format que l'on préfère, car il évite les recherches de noms de chemins d'accès.
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
linear (linéaire). Le reste de la ligne consiste en paramètres pour une cible linéaire.
- linéaire
- par bandes
- miroir
- instantané et origine-instantané
- erreur
- zéro
- multivoies
- cryptage
A.1.1. La cible de mappage linéaire Copier lienLien copié sur presse-papiers!
start length linear device offset
start length linear device offset
start- Blocs de départ en périphérique virtuel
length- longueur de ce segment
device- périphérique en bloc, référencé par le nom d'un périphérique dans le système de fichiers ou par les nombres mineurs ou majeurs sous les formats
major:minor offset- démarrer le déport du mappage sur le périphérique
0 16384000 linear 8:2 41156992
0 16384000 linear 8:2 41156992
/dev/hda.
0 20971520 linear /dev/hda 384
0 20971520 linear /dev/hda 384
A.1.2. La cible de mappage par bandes Copier lienLien copié sur presse-papiers!
start length striped #stripes chunk_size device1 offset1 ... deviceN offsetN
start length striped #stripes chunk_size device1 offset1 ... deviceN offsetN
device (périphérique) et de offset (déport) pour chaque bande.
start- Blocs de départ en périphérique virtuel
length- longueur de ce segment
#stripes- nombre de bandes pour chaque périphérique virtuel
chunk_size- le nombre de secteurs écrit pour chaque bande avant de passer à la prochaine, doit être à la puissance 2 au moins en taille par rapport à la page du noyau.
device- périphérique en bloc, référencé par le nom du périphérique dans le système de fichiers ou par les nombres mineurs ou majeurs sous le format
major:minor. offset- démarrer le déport du mappage sur le périphérique
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
- Blocs de départ en périphérique virtuel
- 73728
- longueur de ce segment
- par bandes 3 128
- bandes sur trois périphériques avec des tailles de tranches de 128 blocs
- 8:9
- Nombres majeurs:mineurs du premier périphérique
- 384
- démarrage du déport de mappage sur le premier périphérique
- 8:8
- Nombres majeurs:mineurs du second périphérique
- 384
- démarrage du déport de mappage sur le second périphérique
- 8:7
- Nombres majeurs:mineurs sur le troisième périphérique
- 9789824
- démarrage du déport du mappage sur le troisième périphérique
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. La cible de mappage en miroir Copier lienLien copié sur presse-papiers!
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- Blocs de départ en périphérique virtuel
length- longueur de ce segment
log_type- Les types de log possibles et leurs arguments sont les suivants :
core- Le miroir est local et le log de miroir est gardé dans la mémoire centrale. Ce type de log contient 1 - 3 arguments :regionsize [[
no]sync] [block_on_error] disk- Le miroir est local et le log du miroir est gradé sur le disque. Ce type de log contient 2 - 4 arguments :logdevice regionsize [[
no]sync] [block_on_error] clustered_core- Le miroir est clusterisé et le log de miroir est conservé dans la mémoire centrale. Ce type de log contient 2 - 4 arguments :regionsize UUID [[
no]sync] [block_on_error] clustered_disk- Le miroir est clusterisé et le log du miroir est conservé sur le disque. Ce type de log contient 3 - 5 arguments :logdevice regionsize UUID [[
no]sync] [block_on_error]
LVM maintient un petit journal qui est utilisé pour garder la trace des régions qui sont synchrônisées avec le ou les miroirs. L'argument regionsize précise la taille de ces régions.Dans un environnement clusterisé, l'argument UUID est un identifiant unique, associé au périphérique du log du miroir, de façon à ce que l'état du log puisse être maintenu à travers le cluster.The optional[no]syncargument can be used to specify the mirror as "in-sync" or "out-of-sync". Theblock_on_errorargument is used to tell the mirror to respond to errors rather than ignoring them. #log_args- nombre d'arguments de logs qui seront spécifiés dans le mappage
logargs- Les arguments de log du miroir, le nombre d'arguments de log fourni est spécifié par le paramètre
#log-argset les arguments de log recevables sont déterminés par le paramètrelog_type. #devs- le nombre de branches du miroir; un périphérique et un déport (offset) sont spécifiés pour chaque branche.
device- périphérique en bloc pour chaque branche du miroir, référencé par le nom du périphérique dans le système de fichiers ou par les nombres mineurs ou majeurs sous le format
major:minor. Un périphérique en bloc et un déport (offset) sont précisés pour chaque branche de miroir, comme indiqué par le paramètre#devs. offset- démarrage du mappage sur le périphérique. Un périphérique en bloc est un déport (offset) sont spécifiés pour chaque branche de miroir, comme indiqué par le paramètre
#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
- Blocs de départ en périphérique virtuel
- 52428800
- longueur de ce segment
- mirror clustered_disk
- cible en miroir avec un type de log spécifiant que le miroir est clusterisé et que le log en miroir est gardé sur le disque.
- 4
- 4 arguments de log en miroir vont suivre
- 253:2
- nombres majeur:mineur de périphériques de logs
- 1024
- taille de région que le log en miroir utilise pour garder la trace de ce qui est synchrônisé
UUID- UUID du périphérique du log en miroir pour conserver l'information du log dans tout le cluster
block_on_error- le miroir doit répondre aux erreurs
- 3
- nombres de branches du miroir
- 253:3 0 253:4 0 253:5 0
- les nombres majeur:mineur et les déports (offset) des périphériques constituent chaque branche du miroir
A.1.4. Les cibles de mappage de l'instantané et de l'instantané d'origine Copier lienLien copié sur presse-papiers!
- Un périphérique comprenant un mappage
linéairecontenant la table de mappage d'origine du volume de la source. - Un périphérique avec un mappage
linéaireutilisé comme périphérique COW (de l'anglais copy-on-write ou copie-sur-écriture) pour le volume source, pour chaque écriture, les données d'origine sont sauvegardées dans le périphérique COW de chaque instantané pour garder son contenu visible inchangé (jusqu'à ce que le périphérique COW soit rempli). - Un périphérique contenant un mappage
instantanécombinant #1 et #2, qui est le volume d'instantanés visibles - 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 et un volume d'instantané intitulé snap bas. sur ce 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
instantané-d'origine est le suivant :
start length snapshot-origin origin
start length snapshot-origin origin
start- Blocs de départ en périphérique virtuel
length- longueur de ce segment
origin- volume de base d'instantané
instantané-d'origine aura normalement un ou plusieurs instantanés basés dessus. Les lectures seront directement mappées sur le périphérique de sauvegarde. Pour chaque écriture, les données d'origine seront sauvegardées dans le périphérique COW de chaque instantané pour garder leur contenu visible inchangé, jusqu'à ce que le périphérique COW soit rempli.
instantané est le suivant :
start length snapshot origin COW-device P|N chunksize
start length snapshot origin COW-device P|N chunksize
start- Blocs de départ en périphérique virtuel
length- longueur de ce segment
origin- volume de base d'instantané
COW-device- Périphérique stockant les morceaux de données modifiées
- P|N
- P (Persistant) ou N (Non persistant); indique si l'instantané survivra après le redémarrage. Pour les instantanés transitoires (N), on doit sauvegarder moins de metadonnées sur le disque. Ils peuvent être contenus dans la mémoire par le noyau.
chunksize- Taille en sectuers de morceaux de données modifiées, qui seront stockés dans le périphérique COW
instantané-d'origine avec un périphérique d'origine de 254:11.
0 2097152 snapshot-origin 254:11
0 2097152 snapshot-origin 254:11
instantané avec un périphérique d'origine de 254:11 et un périphérique COW de 254:12. Ce périphérique d'instantané est persistant à travers les démarrages et la taille du morceau des données stockées sur le périphérique COW est de 16 secteurs.
0 2097152 snapshot 254:11 254:12 P 16
0 2097152 snapshot 254:11 254:12 P 16
A.1.5. La cible de mappage d'erreurs Copier lienLien copié sur presse-papiers!
erreur n'accepte pas de paramètres supplémentaires en dehors de start(démarrage) et de length (longueur).
erreur.
0 65536 error
0 65536 error
A.1.6. Le cible de mappage zéro Copier lienLien copié sur presse-papiers!
zero est un périphérique en bloc équivalent à /dev/zero. Toute opération lecture de ce mappage retourne des blocs de zéro. Les données inscrites sur ce mappage sont ignorées, mais les opérations écriture aboutissent à leur fin. La cible de mappage zero n'accepte pas de paramètres supplémentaires en dehors de start (démarrage) et de length (longueur).
zéro pour un périphérique de 16To.
0 65536 zero
0 65536 zero
A.1.7. La cible de mappage multivoies Copier lienLien copié sur presse-papiers!
multivoie est la suivante :
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 pour chaque groupe de chemins d'accès.
start- Blocs de départ en périphérique virtuel
length- longueur de ce segment
#features- Le nombre de fonctionnalités en multivoies, suivi par ces fonctionnalités. Si ce paramètre est zéro, alors il n'y a pas de paramètre
fonctionnalitéet le prochain paramètre de mappage de périphérique sera#handlerargs. Actuellement, il existe une fonctionnalité multivoies prise en charge,#handlerargs. Elle indique que ce périphérique multivoies est actuellement configuré pour empiler en liste d'attente des opérations E/S s'il n'y a pas de chemin disponible.Ainsi, si l'optionno_path_retrydu fichiermultipath.confa été configuré de façon à s'empiler en file d'attente des opérations E/S jusqu'à ce que tous les chemins d'accès aient été marqués 'failed' (échec) au bout d'un certain nombre de tentatives pour utiliser les chemins d'accès, le mappage apparaîtrait ainsi jusqu'à ce que tous les contrôleurs de chemin d'accès aient 'échoué' le nombre de contrôles spécifiés.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 1000Copy to Clipboard Copied! Toggle word wrap Toggle overflow Après que tous les contrôleurs aient échoué sur le nombre de contrôles spécifiés, le mappage ressemblerait à ce qui suit :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 1000Copy to Clipboard Copied! Toggle word wrap Toggle overflow #handlerargs- Le nombre d'arguments de gestionnaires de matériel, suivi par ces arguments. Un gestionnaire de matériel spécifie un module qui sera utilisé pour effectuer des actions spécifiques à des matériels particuliers au moment des changements de chemins d'accès de groupes ou en cours de gestion des erreurs E/S. Si la configuration est 0, alors le prochain paramètre sera
#pathgroups. #pathgroups- Le nombre de groupes de chemins d'accès. Un groupe de chemins d'accès correspond à l'ensemble des chemins d'accès à partir duquel un périphérique multivoies effectuera l'équilibre de ses charges. Il existe un ensemble de paramètres
pathgroupargspour chaque pathgroup- Le prochain groupe de chemins d'accès à essayer.
pathgroupsargs- Chaque groupe de chemins d'accès consiste aux arguments suivants :
pathselector #selectorargs #paths #pathargs device1 ioreqs1 ... deviceN ioreqsN
pathselector #selectorargs #paths #pathargs device1 ioreqs1 ... deviceN ioreqsNCopy to Clipboard Copied! Toggle word wrap Toggle overflow Il existe un ensemble d'arguments de chemins d'accès pour chaque chemin dans un groupe de chemins d'accès.pathselector- Précise l'algorithme qui est utilisé pour déterminer le chemin d'accès dans ce groupe de chemins d'accès, à utiliser pour la prochaine opération E/S.
#selectorargs- Le nombre d'arguments de sélecteurs de chemins d'accès qui suivent cet argument, est le mappage multivoies. Actuellement, la valeur de cet argument est toujours 0.
#paths- Le nombre de chemins d'accès dans ce groupe de chemins d'accès.
#pathargs- Le nombre d'arguments de chemins d'accès spécifiés pour chaque chemin compris dans ce groupe. Actuellement, ce nombre est toujours de 1, l'argument
ioreqs. device- Le numéro de périphérique en bloc du chemin, référencé par les nombres majeurs et mineurs, sous le format
major:minor ioreqs- Le nombre de requêtes E/S à diriger vers ce chemin avant de passer au prochain chemin du groupe en question.
Figure A.1. Cible de mappage multivoies
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. La cible de mappage de cryptage Copier lienLien copié sur presse-papiers!
crypt cible la codification des données qui passent par le périphérique spécifié. Il utilise l'API Crypto du noyau.
crypt est le suivant :
start length crypt cipher key IV-offset device offset
start length crypt cipher key IV-offset device offset
start- Blocs de départ en périphérique virtuel
length- longueur de ce segment
cipher- Cipher consiste en
cipher[-chainmode]-ivmode[:iv options].cipher- Les ciphers disponibles sont listés dans
/proc/crypto(par exemple,aes). chainmode- Toujours utiliser
cbc. Ne pas utiliserebc; qui n'utilise pas un Vecteur Initial (IV) (de l'anglais Initial Vector). ivmode[:iv options]- IV est un vecteur initial qui est utilisé pour faire varier le cryptage. Le mode de IV est soit
plainou bienessiv:hash. Univmodede-plainutilise le nombre de secteurs (plus IV offset) comme IV. Univmodede-essivconsistue un progrès par rapport au problème de filigrane numérique (watermark).
key- Clé de cryptage, fournie en hex
IV-offset- Initial Vector (IV) offset
device- périphérique en bloc, référencé par le nom d'un périphérique dans le système de fichiers ou par les nombres mineurs ou majeurs sous les formats
major:minor offset- démarrer le déport du mappage sur le périphérique
crypt.
0 2097152 crypt aes-plain 0123456789abcdef0123456789abcdef 0 /dev/hda 0
0 2097152 crypt aes-plain 0123456789abcdef0123456789abcdef 0 /dev/hda 0
A.2. La commande dmsetup Copier lienLien copié sur presse-papiers!
dmsetup est une enveloppe de lignes de commande pour la communication avec le mappeur de périphériques. Pour obtenir des informations système à propos des périphériques LVM, vous allez sûrement trouver les options info, ls, status, et deps de la commande dmsetup utiles, comme expliqué dans les sous-sections suivantes.
dmsetup, reportez-vous à la page de manuel dmsetup(8).
A.2.1. La commande info dmsetup Copier lienLien copié sur presse-papiers!
dmsetup info device fournit des informations sur les périphériques de Device Mapper. Si vous spécifiez un périphérique, alors cette commande produira des informations pour ce périphérique uniquement.
dmsetup info fournit des informations sur les catégories suivantes :
Name- Le nom du périphérique. Un périphérique LVM est exprimé en tant que nom de groupe de volume et le nom du volume logique, séparé par un trait d'union. Un trait d'union qui se trouve dans le nom d'origine, est traduit par deux traits d'union.
State- Les états de périphériques possibles sont
SUSPENDED,ACTIVE, etREAD-ONLY. La commandedmsetup suspendconfigure l'état du périphérique àSUSPENDED. Quand un périphérique est suspendu, toutes les opérations E/S de ce périphérique s'interrompent. La commandedmsetup resumerestaure un état de périphérique àACTIVE. Read Ahead- Le nombre de blocs de données qu'un système lit préliminairement à l'ouverture d'un fichier pour lequel les opérations de lecture sont en cours. Par défaut, le noyau choisit une valeur convenable automatiquement. Vous pourrez changer cette valeur par l'option
--readaheadde la commandedmsetup. Tables present- Possible states for this category are
LIVEandINACTIVE. AnINACTIVEstate indicates that a table has been loaded which will be swapped in when admsetup resumecommand restores a device state toACTIVE, at which point the table's state becomesLIVE. For information, see thedmsetupman page. Open count- La référence ouverte 'count' indique le nombre de fois que le périphérique a été ouvert. Une commande
mountouvre un périphérique. Event number- The current number of events received. Issuing a
dmsetup wait ncommand allows the user to wait for the n'th event, blocking the call until it is received. Major, minor- Nombre de périphériques majeur ou mineur
Number of targets- Le nombre de fragments qui constituent un périphérique. Par exemple, un périphérique linéaire portant sur 3 disques, aurait 3 cibles. Un périphérique linéaire composé par le début et la fin d'un disque, mais sans de partie intermédiaire (milieu) aurait 2 cibles.
UUID- UUID du périphérique
dmsetup info.
A.2.2. La commande dmsetup ls Copier lienLien copié sur presse-papiers!
dmsetup ls. Vous pourrez lister des périphériques qui ont au moins une cible spécifique par la commande dmsetup ls --target target_type. Pour les autres options de la commande dmsetup ls, voir les pages de manuel dmsetup.
A.2.3. La commande de statut dmsetup Copier lienLien copié sur presse-papiers!
dmsetup status device fournit des informations pour chaque cible pour un périphérique particulier. Si vous ne spécifiez pas le nom du périphérique, la sortie correspondra à des informations sur tous les périphériques de Device Mapper actuellement configurés. Vous ne pouvez uniquement lister que les statuts de périphériques qui ont au moins une cible d'un type particulier par la commande dmsetup status --target target_type.
A.2.4. La commande dmsetup deps Copier lienLien copié sur presse-papiers!
dmsetup deps device fournit une liste de paires (major, minor) pour des périphériques référencés par la table de mappage, pour un périphérique particulier. Si vous ne spécifiez pas un nom de périphérique, la sortie portera sur des informations provenant des périphériques de Device Mapper actuellement configurés.
lock_stress-grant--02.1722 :
dmsetup deps lock_stress-grant--02.1722 3 dependencies : (253, 33) (253, 32) (253, 31)
[root@grant-01 ~]# dmsetup deps lock_stress-grant--02.1722
3 dependencies : (253, 33) (253, 32) (253, 31)
Annexe B. Les fichiers de configuration LVM Copier lienLien copié sur presse-papiers!
lvm.conf est chargé à partir du répertoire spécifié par la variable d'environnement LVM_SYSTEM_DIR dont la valeur par défaut est /etc/lvm.
lvm.conf peut spécifier des fichiers de configuration supplémentaires à charger. Les paramètres des fichiers chargés en dernier surchargent les paramètres des premiers fichiers. Pour afficher les paramètres en cours d'utilisation après avoir chargé tous les fichiers de configuration, exécutez la commande lvm dumpconfig.
B.1. Les fichiers de configuration LVM Copier lienLien copié sur presse-papiers!
- /etc/lvm/lvm.conf
- Fichier de configuration central lu par les outils.
- 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 Section C.2, « Les balises hôtes ».
- /etc/lvm/.cache
- Fichier de cache pour le filtre des noms de périphériques (configurable).
- /etc/lvm/backup/
- Répertoire pour les sauvegardes automatiques des métadonnées d'un groupe de volumes (configurable).
- /etc/lvm/archive/
- Répertoire pour l'archivage automatique des métadonnées d'un groupe de volumes (configurable en fonction du chemin d'accès au répertoire et de la taille des archives).
- /var/lock/lvm/
- Dans les configurations avec un seul hôte, verrouillez les fichiers pour empêcher la corruption des métadonnées due à l'exécution parallèle de plusieurs outils ; dans un cluster, DLM à l'échelle du cluster est utilisé.
B.2. Échantillon du fichier lvm.conf Copier lienLien copié sur presse-papiers!
lvm.conf. Ce fichier de configuration est le fichier par défaut de la version de sortie RHEL 5.3. Si votre système exécute un version différente de RHEL5, certains paramètres de configuration pourraient varier.
Annexe C. Les balises des objets LVM Copier lienLien copié sur presse-papiers!
database.
lvs @database
lvs @database
C.1. Ajout et suppression des balises d'objets Copier lienLien copié sur presse-papiers!
--addtag ou --deltag de la commande pvchange.
--addtag ou --deltag des commandes vgchange ou vgcreate.
--addtag ou --deltag des commandes lvchange ou lvcreate.
C.2. Les balises hôtes Copier lienLien copié sur presse-papiers!
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 et définit tag2 si le nom d'hôte est host1.
tags { tag1 { } tag2 { host_list = ["host1"] } }
tags { tag1 { } tag2 { host_list = ["host1"] } }
C.3. Contrôle d'activation avec les balises Copier lienLien copié sur presse-papiers!
vgchange -ay) et active seulement le volume vg1/lvol0 et tout autre volume logique ou groupe de volumes avec la balise database dans les métadonnées.
activation { volume_list = ["vg1/lvol0", "@database" ] }
activation { volume_list = ["vg1/lvol0", "@database" ] }
tags { hosttags = 1 }
tags { hosttags = 1 }
vg1/lvol2, seulement sur l'hôte db2, suivez les instructions suivantes :
- Exécutez
lvchange --addtag @db2 vg1/lvol2sur n'importe quel hôte du cluster. - Exécutez
lvchange -ay vg1/lvol2.
Annexe D. Métadonnées des groupes de volumes LVM Copier lienLien copié sur presse-papiers!
--metadatacopies 0 de la commande pvcreate. Une fois que vous aurez sélectionné le nombre de copies de métadonnées que le volume physique peut contenir, vous ne pourrez plus changer cette valeur. La sélection de 0 copie peut résulter en des mises à jour plus rapides sur les changements de configuration. Notez, cependant, que chaque groupe de volumes doit contenir en permanence au moins un volume physique avec une zone de métadonnées (à moins que vous utilisiez des paramètres de configuration avancés qui vous permettent de stocker les métadonnées du groupe de volumes dans un système de fichiers). Si par la suite vous avez l'intention de partager le groupe de volumes, chaque groupe de volumes doit avoir au moins une copie des métadonnées.
--metadatasize de la commande pvcreate. La taille par défaut est trop petite pour les groupes de volumes ayant beaucoup de volumes logiques ou physiques.
D.1. L'étiquette du volume physique Copier lienLien copié sur presse-papiers!
pvcreate place l'étiquette du volume physique dans le deuxième secteur de 512 octets. Cette étiquette peut optionnellement être placée dans un des 4 premiers secteurs, étant donné que les outils LVM recherchant une étiquette de volume physique vérifient les 4 premiers secteurs. L'étiquette d'un volume physique commence avec la chaîne de caractères LABELONE.
- L'UUID du volume physique
- La taille des périphériques blocs en octets
- Une liste terminant par NULL d'emplacements de zone de données
- Des listes terminant par NULL d'emplacements de zone de métadonnées
D.2. Contenu des métadonnées Copier lienLien copié sur presse-papiers!
- Des informations à propos de la façon dont elles ont été créées et quand
- Des informations à propos du groupe de volumes :
- Le nom et l'identifiant unique
- Un numéro de version qui est incrémenté à chaque fois que les métadonnées sont mises à jour.
- Des propriétés : Lecture/Écriture ? Redimensionnable ?
- Toute limite d'administration du nombre de volumes physiques et logiques qu'il peut contenir
- La taille d'extension (en unités de secteurs qui sont définis comme 512 octets)
- Une liste non ordonnée de volumes physiques qui forment le groupe de volumes, chaque volume avec :
- Son UUID, utilisé pour déterminer le périphérique bloc le contenant
- Toute propriété, par exemple une propriété indiquant si le volume physique est allouable
- L'offset au départ de la première extension au sein du volume physique (en secteurs)
- Le nombre d'extensions
- Une liste non ordonnée de volumes logiques. Chaque volume consiste en :
- Une liste ordonnée de segments de volumes logiques. Pour chaque segment, les métadonnées incluent un mappage appliqué à une liste ordonnée de segments de volumes physiques ou logiques.
D.3. Échantillon de métadonnées Copier lienLien copié sur presse-papiers!
myvg.
Annexe E. Historique de révision Copier lienLien copié sur presse-papiers!
| Historique des versions | |||
|---|---|---|---|
| Version 3-6.400 | 2013-10-31 | ||
| |||
| Version 3-6 | 2012-07-18 | ||
| |||
| Version 1.0-0 | Thu Jan 29 2009 | ||
|
| |||
Index Copier lienLien copié sur presse-papiers!
A
- activating logical volumes
- individual nodes, Activation des volumes logiques sur les noeuds individuels d'un cluster
- activating volume groups, Activation et désactivation des groupes de volumes
- individual nodes, Activation et désactivation des groupes de volumes
- local node only, Activation et désactivation des groupes de volumes
- administrative procedures, Aperçu général de l'administration LVM
- allocation
- policy, Création de groupes de volumes
- preventing, Empêcher l'allocation sur un volume physique
- archive file, Sauvegarde d'un volume logique, Sauvegarde des métadonnées d'un groupe de volumes
B
- backup
- backup file, Sauvegarde des métadonnées d'un groupe de volumes
- block device
- scanning, Recherche de périphériques blocs
C
- cache file
- cluster environment, Le gestionnaire de volumes logiques clusterisé (CLVM), Création de volumes LVM dans un cluster
- CLVM
- clvmd daemon, Le gestionnaire de volumes logiques clusterisé (CLVM)
- command line units, Utilisation des commandes CLI
- configuration examples, Exemples de configuration LVM
- creating
- logical volume, Création de volumes logiques
- logical volume, example, Création d'un volume logique LVM sur trois disques
- LVM volumes in a cluster, Création de volumes LVM dans un cluster
- physical volumes, Création de volumes physiques
- striped logical volume, example, Création d'un volume logique en mode stripe
- volume group, clustered, Création de groupes de volumes au sein d'un cluster
- volume groups, Création de groupes de volumes
- creating LVM volumes
D
- data relocation, online, Déplacement des données en ligne
- deactivating volume groups, Activation et désactivation des groupes de volumes
- exclusive on one node, Activation et désactivation des groupes de volumes
- local node only, Activation et désactivation des groupes de volumes
- device numbers
- device path names, Utilisation des commandes CLI
- device scan filters, Contrôler l'analyse des périphériques LVM avec les filtres
- device size, maximum, Création de groupes de volumes
- device special file directory, Création de groupes de volumes
- display
- sorting output, Trier des rapports LVM
- displaying
- logical volumes, Affichage de volumes logiques, La commande lvs
- physical volumes, Affichage des volumes physiques, La commande pvs
- volume groups, Affichage des groupes de volumes, La commande vgs
E
- extent
- allocation, Création de groupes de volumes
- definition, Les groupes de volumes, Création de groupes de volumes
F
- failed devices
- feedback, Commentaire
- file system
- growing on a logical volume, Augmentation de la taille d'un système de fichiers sur un volume logique
- filters, Contrôler l'analyse des périphériques LVM avec les filtres
G
- growing file system
H
- help display, Utilisation des commandes CLI
I
- initializing
- partitions, Initialisation des volumes physiques
- physical volumes, Initialisation des volumes physiques
- Insufficient Free Extents message, Extensions libres insuffisantes pour un volume logique
L
- linear logical volume
- converting to mirrored, Changement de la configuration du volume en miroir
- creation, Création de volumes linéaires
- definition, Les volumes linéaires
- logging, Journalisation
- logical volume
- administration, general, Administration de volumes logiques
- changing parameters, Changement des paramètres d'un groupe de volumes logiques
- creation, Création de volumes logiques
- creation example, Création d'un volume logique LVM sur trois disques
- definition, Volumes logiques, Les volumes logiques LVM
- displaying, Affichage de volumes logiques, Rapport personnalisé pour LVM, La commande lvs
- exclusive access, Activation des volumes logiques sur les noeuds individuels d'un cluster
- extending, Augmentez la taille des volumes logiques
- growing, Augmentez la taille des volumes logiques
- linear, Création de volumes linéaires
- local access, Activation des volumes logiques sur les noeuds individuels d'un cluster
- lvs display arguments, La commande lvs
- mirrored, Création de volumes en miroir
- reducing, Réduire la taille des volumes logiques
- removing, Suppression de volumes logiques
- renaming, Renommer les volumes logiques
- resizing, Redimensionnement des volumes logiques
- shrinking, Réduire la taille des volumes logiques
- snapshot, Création d'instantanés de volumes
- striped, Création de volumes en mode stripe
- lvchange command, Changement des paramètres d'un groupe de volumes logiques
- lvconvert command, Changement de la configuration du volume en miroir
- lvcreate command, Création de volumes logiques
- lvdisplay command, Affichage de volumes logiques
- lvextend command, Augmentez la taille des volumes logiques
- LVM
- architecture overview, Aperçu de l'architecture LVM
- clustered, Le gestionnaire de volumes logiques clusterisé (CLVM)
- components, Aperçu de l'architecture LVM, Composants LVM
- custom report format, Rapport personnalisé pour LVM
- directory structure, Création de groupes de volumes
- help, Utilisation des commandes CLI
- history, Aperçu de l'architecture LVM
- label, Les volumes physiques
- logging, Journalisation
- logical volume administration, Administration de volumes logiques
- physical volume administration, Administration de volumes physiques
- physical volume, definition, Les volumes physiques
- volume group, definition, Les groupes de volumes
- LVM1, Aperçu de l'architecture LVM
- LVM2, Aperçu de l'architecture LVM
- lvmdiskscan command, Recherche de périphériques blocs
- lvreduce command, Redimensionnement des volumes logiques, Réduire la taille des volumes logiques
- lvremove command, Suppression de volumes logiques
- lvrename command, Renommer les volumes logiques
- lvs command, Rapport personnalisé pour LVM, La commande lvs
- display arguments, La commande lvs
- lvscan command, Affichage de volumes logiques
M
- man page display, Utilisation des commandes CLI
- metadata
- mirrored logical volume
- converting to linear, Changement de la configuration du volume en miroir
- creation, Création de volumes en miroir
- definition, Les volumes logiques en miroir
- failure recovery, Récupération suite à un échec miroir LVM
- reconfiguration, Changement de la configuration du volume en miroir
O
- online data relocation, Déplacement des données en ligne
P
- partition type, setting, Paramétrage du type de partition
- partitions
- multiple, Plusieurs partitions sur un disque
- path names, Utilisation des commandes CLI
- persistent device numbers, Numéros de périphérique persistants
- physical extent
- preventing allocation, Empêcher l'allocation sur un volume physique
- physical volume
- adding to a volume group, Ajout de volumes physiques à un groupe de volumes
- administration, general, Administration de volumes physiques
- creating, Création de volumes physiques
- definition, Les volumes physiques
- display, La commande pvs
- displaying, Affichage des volumes physiques, Rapport personnalisé pour LVM
- illustration, LVM Physical Volume Layout
- initializing, Initialisation des volumes physiques
- layout, LVM Physical Volume Layout
- pvs display arguments, La commande pvs
- recovery, Remplacement d'un volume physique manquant
- removing, Suppression de volumes physiques
- removing from volume group, Suppression de volumes physiques à partir d'un groupe de volumes
- removing lost volume, Supprimer les volumes physiques perdus d'un groupe de volumes
- resizing, Redimensionnement de volumes physiques
- pvdisplay command, Affichage des volumes physiques
- pvmove command, Déplacement des données en ligne
- pvremove command, Suppression de volumes physiques
- pvresize command, Redimensionnement de volumes physiques
- pvs command, Rapport personnalisé pour LVM
- display arguments, La commande pvs
- pvscan command, Affichage des volumes physiques
R
- removing
- disk from a logical volume, Suppression d'un disque du volume logique
- logical volume, Suppression de volumes logiques
- physical volumes, Suppression de volumes physiques
- renaming
- logical volume, Renommer les volumes logiques
- volume group, Renommer un groupe de volumes
- report format, LVM devices, Rapport personnalisé pour LVM
- resizing
- logical volume, Redimensionnement des volumes logiques
- physical volume, Redimensionnement de volumes physiques
S
- scanning
- block devices, Recherche de périphériques blocs
- scanning devices, filters, Contrôler l'analyse des périphériques LVM avec les filtres
- snapshot logical volume
- creation, Création d'instantanés de volumes
- snapshot volume
- definition, Les volumes d'instantanés
- striped logical volume
- creation, Création de volumes en mode stripe
- creation example, Création d'un volume logique en mode stripe
- definition, Les volumes logiques en mode stripe
- extending, Augmenter la taille d'un volume en mode stripe
- growing, Augmenter la taille d'un volume en mode stripe
T
- troubleshooting, Résolution de problèmes LVM
U
- units, command line, Utilisation des commandes CLI
V
- verbose output, Utilisation des commandes CLI
- vgcfbackup command, Sauvegarde des métadonnées d'un groupe de volumes
- vgcfrestore command, Sauvegarde des métadonnées d'un groupe de volumes
- vgchange command, Changement des paramètres du groupe de volumes
- vgcreate command, Création de groupes de volumes, Création de groupes de volumes au sein d'un cluster
- vgdisplay command, Affichage des groupes de volumes
- vgexport command, Déplacer un groupe de volumes sur un autre système
- vgextend command, Ajout de volumes physiques à un groupe de volumes
- vgimport command, Déplacer un groupe de volumes sur un autre système
- vgmerge command, Combinaison de groupes de volumes
- vgmknodes command, Recréation du répertoire d'un groupe de volumes
- vgreduce command, Suppression de volumes physiques à partir d'un groupe de volumes
- vgrename command, Renommer un groupe de volumes
- vgs command, Rapport personnalisé pour LVM
- display arguments, La commande vgs
- vgscan command, Analyse des disques pour les groupes de volumes afin de construire le fichier de cache
- vgsplit command, Fractionnement d'un groupe de volumes
- volume group
- activating, Activation et désactivation des groupes de volumes
- administration, general, Administration d'un groupe de volumes
- changing parameters, Changement des paramètres du groupe de volumes
- combining, Combinaison de groupes de volumes
- creating, Création de groupes de volumes
- creating in a cluster, Création de groupes de volumes au sein d'un cluster
- deactivating, Activation et désactivation des groupes de volumes
- definition, Les groupes de volumes
- displaying, Affichage des groupes de volumes, Rapport personnalisé pour LVM, La commande vgs
- extending, Ajout de volumes physiques à un groupe de volumes
- growing, Ajout de volumes physiques à un groupe de volumes
- merging, Combinaison de groupes de volumes
- moving between systems, Déplacer un groupe de volumes sur un autre système
- reducing, Suppression de volumes physiques à partir d'un groupe de volumes
- removing, Suppression de groupes de volumes
- renaming, Renommer un groupe de volumes
- shrinking, Suppression de volumes physiques à partir d'un groupe de volumes
- splitting, Fractionnement d'un groupe de volumes
- example procedure, Partager un groupe de volumes
- vgs display arguments, La commande vgs