Page d'accueil » comment » Comment gérer et utiliser LVM (gestion de volumes logiques) dans Ubuntu

    Comment gérer et utiliser LVM (gestion de volumes logiques) dans Ubuntu

    Dans notre précédent article, nous vous avons expliqué en quoi consiste LVM et pourquoi vous souhaitez l'utiliser. Aujourd'hui, nous allons vous présenter quelques-uns des principaux outils de gestion de LVM afin que vous soyez confiant lors de la configuration ou de l'extension de votre installation..

    Comme indiqué précédemment, LVM est une couche d'abstraction entre votre système d'exploitation et les disques durs physiques. Cela signifie que vos disques durs physiques et vos partitions ne sont plus liés aux disques durs et aux partitions sur lesquels ils résident. Au lieu de cela, les disques durs et les partitions que votre système d'exploitation voit peuvent être un nombre quelconque de disques durs séparés mis en pool ou dans un logiciel RAID.

    Pour gérer LVM, des outils d’interface graphique sont disponibles, mais pour bien comprendre ce qui se passe dans votre configuration LVM, il est probablement préférable de connaître les outils en ligne de commande. Cela sera particulièrement utile si vous gérez LVM sur un serveur ou une distribution qui ne propose pas d'outils d'interface graphique..

    La plupart des commandes de LVM sont très similaires les unes aux autres. Chaque commande valide est précédée de l’un des éléments suivants:

    • Volume physique = pv
    • Groupe de volume = vg
    • Volume logique = lv

    Les commandes de volume physique permettent d'ajouter ou de supprimer des disques durs dans des groupes de volumes. Les commandes de groupe de volumes permettent de modifier le jeu abstrait de partitions physiques présenté à votre exploitation dans des volumes logiques. Les commandes de volume logique présenteront les groupes de volumes sous forme de partitions afin que votre système d'exploitation puisse utiliser l'espace désigné..

    Aide-mémoire téléchargeable sur LVM

    Pour vous aider à comprendre quelles commandes sont disponibles pour chaque préfixe, nous avons créé un aide-mémoire LVM. Nous allons couvrir certaines des commandes de cet article, mais vous pouvez faire beaucoup de choses qui ne seront pas couvertes ici..

    Toutes les commandes de cette liste devront être exécutées en tant que root, car vous modifiez les paramètres système qui affecteront l’ensemble de la machine..

    (Cliquez sur la vignette pour agrandir l'image.)

    Comment afficher les informations LVM actuelles

    La première chose à faire est peut-être de vérifier la configuration de votre LVM. le s et afficher les commandes fonctionnent avec des volumes physiques (pv), des groupes de volumes (vg) et des volumes logiques (lv); c'est donc un bon point de départ pour essayer de comprendre les paramètres actuels.

    le afficher commande formatera l'information de sorte qu'il est plus facile à comprendre que le s commander. Pour chaque commande, vous verrez le nom et le chemin du pv / vg et il devrait également donner des informations sur l'espace libre et utilisé.

    Les informations les plus importantes seront le nom PV et le nom VG. Avec ces deux informations, nous pouvons continuer à travailler sur la configuration LVM.

    Créer un volume logique

    Les volumes logiques sont les partitions que votre système d'exploitation utilise dans LVM. Pour créer un volume logique, nous devons d’abord disposer d’un volume physique et d’un groupe de volumes. Voici toutes les étapes nécessaires pour créer un nouveau volume logique.

    Créer un volume physique

    Nous allons commencer à partir de zéro avec un disque dur flambant neuf, sans partition ni information. Commencez par trouver le disque sur lequel vous allez travailler. (/ dev / sda, sdb, etc.)

    Remarque: N'oubliez pas que toutes les commandes devront être exécutées en tant que root ou en ajoutant «sudo» au début de la commande..

    fdisk -l

    Si votre disque dur n'a jamais été formaté ou partitionné, vous verrez probablement quelque chose comme ceci dans la sortie de fdisk. C'est tout à fait correct car nous allons créer les partitions nécessaires dans les prochaines étapes..

    Notre nouveau disque est situé dans / dev / sdb, utilisons donc fdisk pour créer une nouvelle partition sur le lecteur..

    Il existe une pléthore d'outils qui peuvent créer une nouvelle partition avec une interface graphique, y compris Gparted, mais puisque le terminal est déjà ouvert, nous allons utiliser fdisk pour créer la partition nécessaire..

    A partir d'un terminal, tapez les commandes suivantes:

    fdisk / dev / sdb

    Cela vous mettra dans une invite spéciale de fdisk.

    Entrez les commandes dans l'ordre indiqué pour créer une nouvelle partition principale utilisant 100% du nouveau disque dur et prête pour LVM. Si vous avez besoin de changer la taille de la partition ou si vous voulez plusieurs partitions, je vous suggère d’utiliser GParted ou de lire vous-même des informations sur fdisk..

    Avertissement: Les étapes suivantes vont formater votre disque dur. Assurez-vous que vous n'avez aucune information sur ce disque dur avant de suivre ces étapes.

    • n = créer une nouvelle partition
    • p = crée la partition primaire
    • 1 = fait de la partition la première sur le disque

    Appuyez deux fois sur enter pour accepter les premier et dernier cylindres par défaut.

    Pour préparer la partition à utiliser par LVM, utilisez les deux commandes suivantes.

    • t = changer le type de partition
    • 8e = modifications apportées au type de partition LVM

    Vérifier et écrire les informations sur le disque dur.

    • p = affiche la configuration de la partition pour pouvoir vérifier avant d'écrire les modifications sur le disque
    • w = écrire les modifications sur le disque

    Après ces commandes, l’invite fdisk doit se fermer et vous revenez à l’invite bash de votre terminal..

    Entrer pvcreate / dev / sdb1 créer un volume physique LVM sur la partition que nous venons de créer.

    Vous vous demandez peut-être pourquoi nous n'avons pas formaté la partition avec un système de fichiers, mais ne vous inquiétez pas, cette étape intervient plus tard..


    Créer un groupe de volumes

    Maintenant que nous avons une partition désignée et un volume physique créé, nous devons créer le groupe de volumes. Heureusement, cela ne prend qu'une commande.

    vgcreate vgpool / dev / sdb1

    Vgpool est le nom du nouveau groupe de volumes que nous avons créé. Vous pouvez le nommer comme vous le souhaitez, mais il est recommandé de mettre vg à l'avant de l'étiquette. Par conséquent, si vous y faites référence plus tard, vous saurez qu'il s'agit d'un groupe de volumes..

    Créer un volume logique

    Pour créer le volume logique que LVM utilisera:

    lvcreate -L 3G -n lvstuff vgpool

    La commande -L désigne la taille du volume logique, dans ce cas 3 Go, et la commande -n nomme le volume. Vgpool est référencé de manière à ce que la commande lvcreate sache quel volume extraire l'espace.

    Formater et monter le volume logique

    Une dernière étape consiste à formater le nouveau volume logique avec un système de fichiers. Si vous souhaitez obtenir de l'aide pour choisir un système de fichiers Linux, lisez notre guide qui peut vous aider à choisir le système de fichiers le mieux adapté à vos besoins..

    mkfs -t ext3 / dev / vgpool / lvstuff

    Créez un point de montage puis montez le volume quelque part, vous pouvez l'utiliser.

    mkdir / mnt / stuff
    mount -t ext3 / dev / vgpool / lvstuff / mnt / stuff

    Redimensionnement d'un volume logique

    L'un des avantages des volumes logiques est que vous pouvez agrandir ou réduire physiquement vos actions sans avoir à tout déplacer sur un disque dur plus grand. Au lieu de cela, vous pouvez ajouter un nouveau disque dur et étendre votre groupe de volumes à la volée. Ou si vous avez un disque dur non utilisé, vous pouvez le supprimer du groupe de volumes pour réduire votre volume logique..

    Il existe trois outils de base pour rendre les volumes physiques, les groupes de volumes et les volumes logiques plus grands ou plus petits..

    Remarque: Chacune de ces commandes devra être précédée de pv, vg ou lv en fonction de votre travail..

    • redimensionner - peut réduire ou développer des volumes physiques et des volumes logiques, mais pas des groupes de volumes
    • étendre - peut rendre les groupes de volumes et les volumes logiques plus grands mais pas plus petits
    • réduire - peut rendre les groupes de volumes et les volumes logiques plus petits mais pas plus grands

    Passons en exemple pour ajouter un nouveau disque dur au volume logique «lvstuff» que nous venons de créer..

    Installer et formater un nouveau disque dur

    Pour installer un nouveau disque dur, suivez les étapes ci-dessus pour créer une nouvelle partition et ajoutez le type de partition à LVM (8e). Ensuite, utilisez pvcreate pour créer un volume physique que LVM peut reconnaître..

    Ajouter un nouveau disque dur au groupe de volumes

    Pour ajouter le nouveau disque dur à un groupe de volumes, il vous suffit de connaître votre nouvelle partition, / dev / sdc1 dans notre cas, ainsi que le nom du groupe de volumes auquel vous souhaitez l'ajouter..

    Cela ajoutera le nouveau volume physique au groupe de volumes existant..

    vgextend vgpool / dev / sdc1

    Étendre le volume logique

    Pour redimensionner le volume logique, nous devons dire combien nous voulons étendre par taille plutôt que par périphérique. Dans notre exemple, nous venons d'ajouter un disque dur de 8 Go à notre vgpool de 3 Go. Pour rendre cet espace utilisable, nous pouvons utiliser lvextend ou lvresize.

    lvextend -L8G / dev / vgpool / lvstuff

    Bien que cette commande fonctionne, vous verrez qu’elle redimensionnera réellement notre volume logique à 8 Go au lieu d’ajouter 8 Go au volume existant comme nous le souhaitions. Pour ajouter les 3 derniers gigaoctets disponibles, vous devez utiliser la commande suivante.

    lvextend -L + 3G / dev / vgpool / lvstuff

    Maintenant, notre volume logique est de 11 Go.

    Étendre le système de fichiers

    Le volume logique est de 11 Go, mais le système de fichiers de ce volume ne contient encore que 3 Go. Pour que le système de fichiers utilise la totalité des 11 Go disponibles, vous devez utiliser la commande resize2fs. Il suffit de pointer resize2fs sur le volume logique de 11 Go pour faire le tour de magie.

    resize2fs / dev / vgpool / lvstuff

    Remarque: Si vous utilisez un système de fichiers différent d’ext3 / 4, veuillez consulter les outils de redimensionnement de votre système de fichiers..

    Réduire le volume logique

    Si vous souhaitez supprimer un disque dur d'un groupe de volumes, vous devez suivre les étapes ci-dessus dans l'ordre inverse et utiliser lvreduce et vgreduce à la place..

    1. redimensionner le système de fichiers (assurez-vous de déplacer les fichiers dans une zone sécurisée du disque dur avant de les redimensionner)
    2. réduire le volume logique (au lieu de + pour étendre, vous pouvez également utiliser - pour réduire la taille)
    3. retirer le disque dur du groupe de volumes avec vgreduce

    Sauvegarder un volume logique

    Les instantanés sont une fonctionnalité fournie par certains systèmes de fichiers avancés plus récents, mais il manque à ext3 / 4 la possibilité de faire des instantanés à la volée. L’un des aspects les plus intéressants des instantanés LVM est que votre système de fichiers n’est jamais mis hors ligne et vous pouvez en avoir autant que vous le souhaitez sans utiliser davantage d’espace disque..

    Lorsque LVM prend un instantané, une photo de l'apparence exacte du volume logique est prise et cette photo peut être utilisée pour effectuer une copie sur un disque dur différent. Lors de la copie, toute nouvelle information devant être ajoutée au volume logique est écrite comme d'habitude sur le disque, mais les modifications sont suivies afin que l'image d'origine ne soit jamais détruite..

    Pour créer un instantané, nous devons créer un nouveau volume logique avec suffisamment d'espace libre pour contenir toute nouvelle information qui sera écrite sur le volume logique pendant la sauvegarde. Si le lecteur n'est pas en cours d'écriture, vous pouvez utiliser une très petite quantité de stockage. Une fois que nous avons terminé notre sauvegarde, nous supprimons simplement le volume logique temporaire et le volume logique d'origine continue normalement..

    Créer un nouvel instantané

    Pour créer un instantané de lvstuff, utilisez la commande lvcreate comme avant, mais utilisez l'indicateur -s.

    lvcreate -L512M -s -n lvstuffbackup / dev / vgpool / lvstuff

    Ici, nous avons créé un volume logique avec seulement 512 Mo, car le lecteur n’est pas utilisé activement. Les 512 Mo stockeront toutes les nouvelles écritures pendant la sauvegarde..

    Monter un nouvel instantané

    Comme auparavant, nous devons créer un point de montage et monter le nouvel instantané afin de pouvoir en copier des fichiers..

    mkdir / mnt / lvstuffbackup
    mount / dev / vgpool / lvstuffbackup / mnt / lvstuffbackup

    Copier un instantané et supprimer un volume logique

    Tout ce que vous avez à faire est de copier tous les fichiers de / mnt / lvstuffbackup / sur un disque dur externe ou de le sauvegarder de manière à ce que tout se trouve dans un seul fichier..

    Remarque: tar -c créera une archive et -f indiquera l'emplacement et le nom du fichier de l'archive. Pour obtenir de l'aide sur l'utilisation de la commande tar homme tar dans le terminal.

    tar -cf / home / rothgar / Sauvegarde / lvstuff-ss / mnt / lvstuffbackup /

    N'oubliez pas que pendant la sauvegarde, tous les fichiers qui seraient écrits dans lvstuff font l'objet d'un suivi dans le volume logique temporaire créé précédemment. Assurez-vous de disposer de suffisamment d'espace libre pendant la sauvegarde..

    Une fois la sauvegarde terminée, démontez le volume et supprimez l'instantané temporaire..

    umount / mnt / lvstuffbackup
    lvremove / dev / vgpool / lvstuffbackup /

    Suppression d'un volume logique

    Pour supprimer un volume logique, vous devez d'abord vous assurer que le volume est démonté, puis vous pouvez utiliser lvremove pour le supprimer. Vous pouvez également supprimer un groupe de volumes une fois les volumes logiques supprimés et un volume physique une fois le groupe supprimé..

    Voici toutes les commandes utilisant les volumes et les groupes que nous avons créés.

    umount / mnt / lvstuff
    lvremove / dev / vgpool / lvstuff
    vgremove vgpool
    pvremove / dev / sdb1 / dev / sdc1

    Cela devrait couvrir la plupart de ce que vous devez savoir pour utiliser LVM. Si vous avez de l'expérience sur le sujet, assurez-vous de partager votre sagesse dans les commentaires..