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 partitionp
= crée la partition primaire1
= 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 partition8e
= 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 disquew
= é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 petitsré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..
- 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)
- réduire le volume logique (au lieu de + pour étendre, vous pouvez également utiliser - pour réduire la taille)
- 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..