Pour augmenter le niveau de sécurité des données, les développeurs intègrent de nouvelles technologies dans leurs systèmes d’exploitation. Dans cet article, nous examinerons le LVM et répondrons aux questions de savoir ce que c’est et quels sont ses principaux avantages.
Contenu
- Qu'est-ce que LVM et comment ça fonctionne?
- Avantages et inconvénients de LVM
- Comment travailler avec LVM?
- Les types de volumes dans LVM?
- Comment supprimer ou redimensionner un volume LVM?
- Instantanés dans LVM
- LVM + RAID et RAID + LVM
- Que faire si les données ont été perdues?
Qu’est-ce que LVM et comment ça fonctionne?
LVM (gestionnaire de volumes logiques) est une technologie qui vous permet d’utiliser une partie de l’espace de votre disque dur (ou de plusieurs disques) et de le combiner en un seul volume logique pour un travail ultérieur. Grâce à cela, vous pouvez partitionner plus facilement votre espace de disque total car vous n’êtes pas limité par un seul disque dur. LVM fonctionne également avec les disques SSD.
Examinons de plus près comment fonctionne LVM.
Imaginez que vous avez deux disques durs avec une capacité de mémoire de 100 Go (2 x 100 Go). En utilisant une partition régulière, vous pouvez créer un volume maximal de 100 Go pour chaque disque.
Si vous utilisez LVM à cette fin, vous pouvez créer par exemple un volume avec un espace de 120 Go et le deuxième avec un espace de 80 Go. La chose principale est que LVM crée un niveau abstrait qui fusionne l’espace disque pour les deux disques durs, puis vous pouvez partitionner l’espace de disque total comme vous le souhaitez.
Schématiquement, cela ressemble à ceci:
Cet effet peut être réalisé en utilisant le sous-système de mappage de périphériques.
Les partitions initiales sont divisées en blocs ou en périphériques de blocs (volume physique (pv)) et combinées en un seul volume virtuel, ou plus précisément, un groupe de volumes (vg). Ensuite, ce volume virtuel est divisé en volumes logiques (lv). Pour le système de fichiers, un volume logique est représenté comme un périphérique de bloc régulier, bien que les volumes physiques individuels puissent être situés sur différents périphériques physiques (et même le volume physique lui-même peut être distribué comme un RAID).
Plus d’informations sur le RAID peuvent être trouvées dans l’article?Qu’est-ce que le RAID et à quoi sert-il??
Avantages et inconvénients de LVM
Avant d’utiliser LVM, considérons les principaux avantages et inconvénients de son utilisation. Le principal avantage est que pour certaines personnes, LVM sera la meilleure solution, tandis que pour d’autres, ce sera une déception totale. Mais commençons par les avantages.
LVM fonctionne au niveau du noyau. Cela garantit une transparence maximale de la configuration et de l’utilisation du disque. Les programmes pourront travailler avec des partitions logiques et virtuelles LVM de la même manière que les partitions normales.
Le principal avantage est la possibilité de créer, de redimensionner et de renommer les volumes sans redémarrer l’ordinateur.
Vous pouvez également redimensionner votre volume dynamiquement. Cela signifie que vous pouvez créer un petit volume d’abord, puis le configurer pour qu’il s’agrandisse lorsqu’il est rempli.
De plus, vous pouvez combiner n’importe quel nombre de disques en un pool logique, puis créer autant de volumes que vous le souhaitez. C’est rapide et facile.
En outre, LVM vous permet de créer des instantanés de volumes logiques sans arrêter le système d’exploitation et d’utiliser des fonctionnalités de cryptage avancées.
Comme vous pouvez le voir, LVM convient aux serveurs domestiques qui stockent beaucoup de données. LVM, associé à un système de fichiers rapide, peut vous offrir de grandes opportunités de travail.
Vous pouvez trouver plus d’informations sur le choix du système de fichiers dans l’article « Quel système de fichiers est le meilleur à utiliser?« .
En même temps, la technologie LVM présente certains inconvénients qui peuvent constituer un obstacle à son utilisation.
Le plus important inconvénient est le fait que LVM ajoute un niveau virtuel supplémentaire qui peut affecter les performances du système. Ce n’est pas essentiel pour une utilisation domestique, mais c’est particulièrement vrai pour les systèmes et serveurs fortement chargés. Le problème est que même la plus petite baisse de performance peut avoir un impact important sur la disponibilité des données du client. Par exemple, nous pouvons considérer l’hébergement vidéo. Étant donné que de tels pools ont un grand nombre de connexions de clients, les plus petites baisses de performance peuvent rendre la vidéo indisponible.
Un autre problème est que la création d’instantanés entraîne également une baisse de performance. Cela restreint leur utilisation dans les systèmes de production.
Et le dernier inconvénient est le fait que les systèmes de fichiers modernes (comme Btrfs et ZFS) prennent en charge de nombreuses fonctionnalités de LVM (comme le redimensionnement en ligne, la création d’instantanés, etc.) et restreignent leur utilisation dans les systèmes de production. Dans certains cas, il n’a donc aucun sens d’utiliser LVM.
Comment travailler avec LVM?
L’option de configuration de LVM est fournie lors de l’installation de toute distribution Linux moderne, mais comment travailler avec? Ci-dessous, vous trouverez les instructions.
LVM se compose de trois niveaux:
- volume physique (un ou plusieurs);
- groupe de volumes physiques (groupe de volumes (également appelé PV));
- volume logique (qui sera disponible pour les programmes (également appelé LV));
3.1 Comment installer LVM?
Avant de créer LVM, la première chose à faire est d’installer le programme LVM2. Cela peut être fait en utilisant le terminal et en exécutant la commande:
$ sudo apt install lvm2
Une fois que LVM 2 est installé, vous pouvez commencer à travailler avec vos disques.
3.2 Comment initialiser les volumes physiques LVM?
Pour initialiser les volumes physiques LVM, il faut d’abord décider lesquels seront utilisés. Imaginons que ce seront /dev/sda6 et /dev/sda7. Pour les initialiser, exécutez la commande suivante:
$ sudo pvcreate /dev/sda6 /dev/sda7
Pour vérifier si les volumes physiques ont été correctement initialisés, utilisez la commande:
$ sudo pvscan
Le système affichera tous les volumes logiques du système.
Vous pouvez également voir les attributs détaillés en utilisant la commande suivante:
$ sudo pvdisplay
Si vous voulez connaître la taille du bloc mémoire LVM unique, vérifiez l’attribut PE Size. Par défaut, il est de 4 Mo, mais vous pouvez le modifier à tout moment.
3.3 Comment créer le groupe de volumes LVM?
Le Groupe de Volumes (VG) est le pool de mémoire totale qui se compose de quelques volumes physiques initiés. Ce pool peut être converti en volumes logiques, et vous ne serez pas limité par la taille de mémoire du disque physique. Tous les disques à l’intérieur du groupe de volumes doivent être initialisés.
Vous pouvez créer le groupe de volumes avec la commande suivante:
$ sudo vgcreate vol_grp1 /dev/sda6 /dev/sda7
Maintenant, pour vérifier si tout est en ordre, utilisez la commande:
$ sudo vgdisplay
Maintenant, nous sommes prêts à créer des volumes logiques.
3.4 Comment créer des volumes logiques LVM?
Les volumes logiques LVM sont créés avec la commande lvcreate. Comme vous vous en souvenez, avec la technologie LVM, vous n’êtes pas limité par la taille physique d’un disque. Cela signifie que vous allez maintenant diviser tout l’espace de stockage en un seul volume logique.
Comme vous vous en souvenez, nous avions deux disques durs de 100 Go chacun. Mais maintenant, nous allons créer deux volumes logiques – un de 80 Go et un de 120 Go. Utilisez la commande suivante pour ce faire:
$ sudo lvcreate -L 80G -n logical_vol1 vol_grp1
où 80G est la taille de votre volume.
Ainsi, la commande pour créer le volume de 100 Go ressemblera à ceci:
$ sudo lvcreate -L 100G -n logical_vol2 vol_grp1
Vous pouvez également utiliser les lettres suivantes pour spécifier la taille du volume:
- B — octets;
- K — kilooctets;
- M — mégaoctets;
- G — gigaoctets;
- T — téraoctets;
Pour vérifier la liste des volumes logiques créés, utilisez la commande:
$ sudo lvdisplay
Si tout a été fait correctement, vous verrez les volumes logiques que vous venez de créer, y compris des informations détaillées sur chaque volume.
3.5 Comment monter le volume LVM?
À ce stade, nous pouvons monter nos nouveaux volumes logiques. Mais d’abord, nous devons les formater. Cela peut être fait comme pour un volume régulier. Nous pouvons donc utiliser la commande standard:
$ sudo mkfs.ext4 /dev/vol_grp1/logical_vol1
$ sudo mkfs.ext4 /dev/vol_grp1/logical_vol2
où logical_vol1 et logical_vol2 sont les noms de nos volumes.
Pour monter les volumes, utilisez les commandes:
$ sudo mount /dev/vol_grp1/logical_vol1 /mnt/
$ sudo mount /dev/vol_grp1/logical_vol2 /mnt/
Maintenant, vous pouvez travailler avec nos volumes logiques comme avec un disque régulier.
Comme vous pouvez le constater, le travail avec les volumes logiques est similaire à celui des disques réguliers. Vous pouvez les formater, les renommer et les modifier sans aucun problème.
Les types de volumes dans LVM?
Dans LVM, vous pouvez utiliser trois types de volumes: les volumes linéaires, les volumes en bandes et les volumes en miroir.
Les volumes linéaires sont utilisés par défaut dans LVM. En fait, il s’agit de volumes réguliers sans fonctions supplémentaires. Pas plus de fiabilité ou de performances améliorées. En fait, c’est similaire à RAID 0. Si vous voulez connaître la différence entre LVM et RAID, lisez l’article Comparaison et différence entre RAID, LVM et mdadm.
Les volumes en bandes sont utiles lorsque vous souhaitez augmenter la vitesse de lecture/écriture de votre volume LVM. Il peut être créé avec la commande:
$ sudo lvcreate -L 1G -i 2 -n logical_vol2 vol_grp1
où -i est le nombre de bandes (ce nombre ne peut pas être supérieur au nombre de disques physiques) et -L est la taille d’une bande (qui ne peut pas être supérieure à la taille du disque).
C’est une bonne solution si vous n’avez pas peur de perdre des données. Si un disque échoue, toutes les informations seront perdues. Les volumes LVM en bandes sont également utilisés si vous voulez réduire la charge sur vos disques durs ou SSD. Mais le problème est le même: si un disque échoue, vous perdrez toutes les données.
Le prochain type de volume LVM est le volume en miroir. Ce volume est l’équivalent de RAID 1 et crée une copie des données sur chaque disque de votre groupe.
Cette méthode permet de sauvegarder une copie de vos données. Si un disque échoue, tous vos volumes seront convertis en linéaires et vous pourrez lire les informations. Cependant, un tel volume sera beaucoup plus lent, car l’ordinateur devra écrire les données plusieurs fois.
Pour créer un volume LVM en miroir, utilisez la commande:
$ sudo lvcreate -L 200M -m1 -n lv_mirror vol_grp1
Comment supprimer ou redimensionner un volume LVM?
Il peut arriver que l’espace libre de votre volume LVM soit épuisé. Ce n’est pas un problème, car vous pouvez ajouter un nouveau disque dur à votre groupe LVM.
5.1 Comment redimensionner le volume logique?
Il est possible de redimensionner les volumes logiques, peu importe l’espace libre sur le disque physique. Si le pool de mémoire dispose d’un espace de stockage libre, vous pouvez l’utiliser pour n’importe quel volume logique. Cela peut être fait avec la commande lvextend. Redimensionnons notre volume LVM de 80 Go à 100 Go. Pour cela, utilisez simplement la commande:
$ sudo lvextend -L+100G /dev/vol_grp1/logical_vol1
où -L+100G est la nouvelle taille de votre volume.
Pour diminuer le volume LVM, utilisez – au lieu de +.
Ainsi, la commande pour diminuer le volume LVM ressemblera à ceci:
$ sudo lvextend -L-100G /dev/vol_grp1/logical_vol1
5.2 Comment supprimer le volume LVM?
Si vous n’avez plus besoin du volume LVM, il n’y a aucun problème pour le supprimer. Cependant, soyez prudent avant de le supprimer, car toutes les données seront perdues. Pour supprimer le volume LVM, utilisez la commande suivante:
$ sudo lvremove /dev/vol_grp1/lv_mirror
Votre volume LVM est maintenant complètement supprimé.
Instantanés dans LVM
La technologie LVM permet de créer des instantanés. C’est très utile si vous devez effectuer des modifications, mais que vous n’êtes pas sûr du résultat final. Vous pouvez créer l’instantané et en cas de problèmes, revenir à l’instantané. En même temps, vous n’avez pas besoin d’arrêter votre machine, ce qui est particulièrement important pour les serveurs en production dans les entreprises, où de nombreux employés peuvent accéder aux données.
Important: un instantané n’est pas une sauvegarde.
Lorsque vous créez l’instantané, tous les processus d’écriture s’arrêtent pendant quelques millisecondes (tout dépend de la quantité de données et des performances du serveur). L’utilisateur régulier ne le remarquera pas.
En cas de problèmes, vous pouvez également restaurer rapidement votre serveur dans un état de fonctionnement.
De plus, les instantanés n’ont pas besoin de beaucoup de mémoire libre, ce qui est très utile.
En même temps, vous ne pouvez pas conserver votre instantané trop longtemps, car cela chargera votre disque dur et votre système d’exploitation. C’est pourquoi une sauvegarde régulière est plus utile pour une sauvegarde à long terme.
Pour créer un instantané dans LVM, utilisez la commande:
Lvcreate -L 1G -s -n snap_vg_data /dev/mapper/vg_data-lv_data
où -L 1G est la quantité de mémoire réservée pour l’instantané, et vg_data-lv_data est le nom de votre instantané.
Pour vérifier les informations détaillées sur votre instantané, utilisez la commande:
lvdisplay /dev/vg_data/snap_vg_data
Comme vous pouvez le voir, il est rapide et facile de créer des instantanés dans LVM.
LVM + RAID et RAID + LVM
De nombreux utilisateurs demandent s’il est possible de créer un volume LVM basé sur des tableaux RAID et vice versa, de créer un tableau RAID basé sur des volumes LVM.
La réponse est « Oui ». Mais il y a quelques détails que vous devez connaître avant de commencer un tel processus.
Si vous voulez créer un tableau RAID basé sur des volumes LVM, vous devez savoir comment LVM distribue les données. Le volume LVM remplira le premier disque, lorsque le deuxième disque ne sera pas utilisé (pendant la distribution de données linéaire). Ce processus est illustré dans l’image ci-dessous:
Ce cas est un gros problème pour les disques SSD, car cela augmente considérablement l’usure du disque rempli, et les performances diminueront considérablement. Même si vous utilisez la méthode de parité (deux groupes de disques avec parité), cela ne changera pas la situation. Le problème est que la parité sera utilisée à l’intérieur du groupe, mais pas entre tous les disques. Le remplissage du deuxième groupe ne commencera que lorsque le premier groupe sera plein.
C’est pourquoi le volume LVM basé sur des tableaux RAID est préférable. L’utilitaire mdadm distribuera correctement la charge entre les disques, et vous pourrez ajouter des disques à votre stockage. Le problème est que LVM est difficile à administrer. Vous devez connaître de nombreuses commandes pour travailler correctement avec lui.
Donc, si vous n’êtes pas un geek de Linux, ce n’est pas votre choix. Dans ce cas, il est préférable d’utiliser un tableau RAID régulier, car les systèmes d’exploitation Windows et Mac OS ne peuvent pas fonctionner avec LVM.
Que faire si les données ont été perdues?
L’utilisation de technologies conçues pour augmenter la sécurité des données ou la flexibilité de l’allocation d’espace disque ne se termine pas toujours bien. Dans certains cas, cela peut créer plus de problèmes que si l’on utilisait des disques réguliers. C’est particulièrement vrai pour les utilisateurs inexpérimentés qui veulent obtenir quelque chose de plus de leur configuration informatique, mais qui ne savent pas comment gérer correctement la construction du disque. C’est pourquoi il est important de savoir quoi faire si des données importantes sont perdues.
Tout d’abord, il ne faut pas paniquer et utiliser l’outil professionnel de récupération de données.
Pour l’instant, la solution la plus efficace pour récupérer des données importantes d’un ensemble RAID est RS RAID Retrieve.
Le constructeur RAID intégré construira votre ensemble RAID ou votre volume LVM, et vous pourrez déplacer vos informations dans un endroit sûr.
Examinons de plus près comment vous pouvez récupérer les données:
Étape 1: Téléchargez et installez RS RAID Retrieve. Lancez l’application après l’installation. Le « constructeur RAID intégré » s’ouvrira devant vous. Cliquez sur « Suivant«
Étape 2: Choisissez la méthode d’ajout d’un ensemble RAID ou d’un volume LVM pour la numérisation. RS RAID Retrieve propose trois options au choix:
- Mode automatique – vous permet de simplement spécifier les disques qui composaient l’ensemble ou le volume LVM, et le programme déterminera automatiquement leur ordre, le type d’ensemble et d’autres paramètres;
- Recherche par fabricant – cette option doit être choisie si vous connaissez le fabricant de votre contrôleur RAID. Cette option est également automatique et ne nécessite aucune connaissance de la structure de l’ensemble RAID. Avoir les informations du fabricant permet de réduire le temps de construction de l’ensemble, et est donc plus rapide que l’option précédente;
- Création manuelle – cette option vaut la peine d’être utilisée si vous savez quel type de RAID vous utilisez. Dans ce cas, vous pouvez spécifier tous les paramètres que vous connaissez, et ceux que vous ne connaissez pas – le programme déterminera automatiquement
Après avoir sélectionné l’option appropriée – cliquez sur « Suivant« .
Étape 3: Sélectionnez les disques qui composent l’ensemble RAID ou le volume LVM et cliquez sur « Suivant« . Cela lancera le processus de détection des configurations d’ensemble. Lorsqu’il est terminé, cliquez sur « Terminer« .
Étape 4: Après que le constructeur a construit le volume LVM (ou l’ensemble RAID basé sur les volumes LVM) – il apparaîtra comme un disque normal. Double-cliquez dessus. L’Assistant de récupération de fichiers s’ouvrira devant vous. Cliquez sur « Suivant«
Étape 5: RS RAID Retrieve vous proposera de numériser votre ensemble ou votre volume LVM pour récupérer des fichiers. Vous aurez deux options: une numérisation rapide et une analyse complète de l’ensemble. Sélectionnez l’option souhaitée. Ensuite, sélectionnez le type de système de fichiers qui a été utilisé sur l’ensemble. Si vous ne connaissez pas cette information, cochez toutes les options disponibles, comme sur la capture d’écran. Il convient de noter que RS RAID Retrieve prend en charge TOUS les systèmes de fichiers modernes.
Étape 6: Le processus de numérisation commencera. Lorsqu’il est terminé, vous verrez la structure précédente des fichiers et des dossiers. Trouvez les fichiers nécessaires, cliquez avec le bouton droit de la souris dessus et sélectionnez « Récupération«
Étape 7: Spécifiez l’emplacement où les fichiers récupérés seront enregistrés. Il peut s’agir d’un disque dur, d’une archive ZIP ou d’un serveur FTP. Cliquez sur « Suivant«
Après avoir cliqué sur le bouton « Suivant« , le programme commencera le processus de récupération. Lorsqu’il est terminé – vous trouverez les fichiers sélectionnés à l’emplacement spécifié.
Après que tous les fichiers ont été récupérés avec succès – recréez le volume LVM, puis copiez les fichiers à nouveau.
Comme vous pouvez le voir, avec RS RAID Retrieve, il est facile d’extraire des données importantes de l’ensemble LVM cassé. De plus, vous n’avez besoin d’aucun logiciel ou matériel supplémentaire. Il suffit de connecter les disques à votre PC et d’utiliser les instructions ci-dessus. Rapide et facile.