Contacts

Paramètre LVM. Installation d'Ubuntu Desktop sur LVM. Création et suppression

Chez moi Serveur Linux un disque de 250 Go est installé. Je viens d'acheter un nouveau disque SATA de 250 Go et je souhaite ajouter un nouveau disque à mon volume LVM existant pour augmenter sa taille à 500 Go. Comment ajouter un disque à LVM et étendre le volume LVM dans système opérateur Linux ?

Linux Volume Management (LVM) crée une couche facile à utiliser au-dessus des disques physiques. Vous pouvez combiner plusieurs disques et créer des volumes de stockage logiques. Cela offre des avantages spécifiques tels que:

  1. Aucune restriction sur la taille du disque ;
  2. Augmenté débit disque
  3. Mise en miroir des volumes pour les données commerciales critiques ;
  4. Instantanés de volume ;
  5. Poumon sauvegarde et récupération à l'aide d'instantanés ;
  6. Mouvement de données facile ;
  7. Redimensionnement des pools de stockage (ajout ou suppression de disques) sans avoir à reformater les disques.
Dans ce guide d'étude montre comment partitionner, formater et ajouter un nouveau disque à un volume LVM sous Linux. À des fins de démonstration, j'utilise Ubuntu VM, mais les commandes restent les mêmes pour le bare metal ou toute autre technologie de virtualisation telle que KVM, Xen, VMware, etc.

Attention: Soyez prudent avec lvm / mkfs.ext4 et d'autres commandes et noms de périphériques comme si le nom de l'appareil est spécifié de manière incorrecte, il peut détruire toutes les données. Soyez prudent et conservez toujours des sauvegardes complètes.

Étape 1 - Trouver des informations sur les LVM existants

La gestion du stockage LVM est divisée en trois parties :

  1. Volumes physiques (FT (PV))- réel (par exemple /dev/sda, /dev, sdb, /dev/vdb, etc.)
  2. Groupes de volumes (GT (VG))- les volumes physiques sont regroupés en groupes de volumes. (par exemple, my_vg = / dev / sda + / dev / sdb.)
  3. Volumes logiques (LT (LV))- le groupe de volumes, à son tour, est divisé en volumes logiques (par exemple, my_vg est divisé en my_vg/data, my_vg/backups, my_vg/home, my_vg/mysqldb, etc.)
Entrez les commandes suivantes pour obtenir des informations sur chaque pièce.

Comment afficher des informations sur les volumes physiques (pv)

Saisissez la commande pvs suivante pour afficher les informations sur les volumes physiques :

Donc, actuellement mon LVM comprend un volume physique (disque réel) appelé /dev/vda5. Regarder des informations détailléesà propos des propriétés, saisissez :

$ sudo pvdisplay

Exemples de sorties de données possibles :

Il ressort clairement de la sortie ci-dessus que notre groupe de volumes nommé ubuntu-box-1-vg est constitué d'un volume physique nommé / dev / vda5.

Comment afficher des informations sur le groupe de volumes LVM (vg)

Saisissez l'une des commandes vgs/vgdisplay vgs suivantes pour afficher des informations sur les groupes de volumes et leurs propriétés :

$ sudo vgdisplay

Exemples de sorties de données possibles :

Comment afficher des informations sur le volume logique LVM (lv)

Saisissez l'une des commandes lvs / lvdisplay suivantes pour afficher des informations sur les groupes de volumes et leurs propriétés :

$ sudo lvdisplay

Exemples de sorties de données possibles :

Mon groupe de volumes ubuntu-box-1-vg est divisé en deux volumes logiques :

  1. / dev / ubuntu-box-1-vg / root - système de fichiers racine ;
  2. / dev / ubuntu-box-1-vg / swap_1 - espace d'échange.
Sur la base des commandes ci-dessus, vous pouvez avoir une idée de base de la façon dont LVM organise le stockage en volumes physiques (PV), groupes de volumes (VG) et volumes logiques (LV) :

Étape 2 - Trouver des informations sur le nouveau disque

Vous devez ajouter un nouveau lecteur à votre serveur. Dans cet exemple, à des fins de démonstration, j'ai ajouté un nouveau disque d'une taille de 5 Go. Pour obtenir des informations sur le démarrage de nouveaux disques :

$ sudo fdisk –l

$ sudo fdisk -l | grep "^ Disque / dev /"

Exemples de sorties de données possibles :

Une autre option consiste à numériser tous appareils visibles pour LVM2 :

$ sudo lvmdiskscan

Exemples de sorties de données possibles :

/ dev / ram0 [64,00 MiB] / dev / ubuntu-box-1-vg / root [37,49 Gio] / dev / ram1 [64,00 MiB] / dev / ubuntu-box-1-vg / swap_1 [2,00 Gio] / dev / vda1 [487,00 MiB] / dev / ram2 [64,00 MiB] / dev / ram3 [64,00 MiB] / dev / ram4 [64,00 MiB] / dev / ram5 [64,00 MiB] / dev / vda5 [39,52 Gio] Volume physique LVM / dev / ram6 [64,00 MiB] / dev / ram7 [64,00 MiB] / dev / ram8 [64,00 MiB] / dev / ram9 [64,00 MiB] / dev / ram10 [64,00 MiB] / dev / ram11 [64,00 MiB] / dev / ram12 [64,00 MiB] / dev / ram13 [64,00 MiB] / dev / ram14 [64,00 MiB] / dev / ram15 [64,00 MiB] / dev / vdb [5,00 Gio] 2 disques 18 partitions 0 volume physique LVM disques entiers 1 physique LVM le volume

Étape 3 - Création de volumes physiques (pv) sur un nouveau disque nommé /dev/vdb

Saisissez la commande suivante :

$ sudo pvcreate / dev / vdb

Exemples de sorties de données possibles :

Volume physique "/dev/vdb" créé avec succès

Exécutez maintenant la commande suivante pour vérifier :

$ sudo lvmdiskscan –l

Exemples de sorties de données possibles :

AVERTISSEMENT : ne considérant que les périphériques LVM / dev / vda5 [39,52 Gio] Volume physique LVM / dev / vdb [5,00 Gio] Volume physique LVM 1 volume physique LVM disque entier 1 volume physique LVM

Étape 4 - Ajout du volume physique (pv) nouvellement créé nommé / dev / vdb au volume logique existant (lv)

Entrez la commande suivante pour ajouter le volume physique / dev / vdb au groupe de volumes « ubuntu-box-1-vg » :

$ sudo vgextend ubuntu-box-1-vg / dev / vdb

Exemples de sorties de données possibles :

Les sections classiques en lesquelles il est le plus souvent divisé Disque dur pour l'installation du système et le stockage des données, j'ai un certain nombre d'inconvénients importants. Leur taille est très difficile à changer, ils sont dans un ordre strict et cela ne fonctionnera pas simplement de prendre un morceau de la première section et de l'ajouter à la dernière s'il y a plus de sections entre eux. Par conséquent, très souvent lors du partitionnement initial du disque dur, les utilisateurs se creusent la tête - combien d'espace allouer pour telle ou telle partition. Et presque toujours, en utilisant le système, ils arrivent à la conclusion qu'ils ont fait le mauvais choix.

La technologie LVM peut résoudre la plupart de ces problèmes. Il crée une abstraction supplémentaire - des volumes logiques qui sont visibles dans le système en tant que partitions normales, mais qui ne le sont pas. Il a plusieurs avantages :

    Les volumes logiques LVM ne sont plus liés à un emplacement physique. Dans LVM, l'ordre des volumes logiques n'existe pas du tout.

    Les volumes logiques peuvent être étendus à la volée, et les volumes non montés peuvent également être facilement réduits en taille sans quitter le système.

    Si nécessaire, vous pouvez répartir les volumes logiques sur plusieurs disques durs physiques, augmentant ainsi l'espace disponible. Dans ce cas, le système ne verra toujours qu'un seul volume logique, bien que sa taille dépasse les tailles disponibles disques durs... Vous pouvez également faire l'inverse en supprimant le disque dur de LVM, le libérant ainsi pour une autre utilisation.

    LVM prend en charge le mécanisme des instantanés - des instantanés du système de fichiers d'un volume. Cela peut être très utile pour créer des sauvegardes.

    Il existe de nombreux autres avantages que vous pouvez lire dans des articles spécialisés sur LVM.

Ubuntu prend entièrement en charge LVM, mais à partir de la version Desktop disque d'installation supprimé les utilitaires nécessaires pour travailler avec LVM. De plus, le programme d'installation de Desktop ne peut pas modifier les volumes LVM. Par conséquent, si vous souhaitez utiliser LVM, vous devez soit installer le système à partir d'un disque alternatif, soit tricher un peu avec un LiveCD ordinaire. L'installation avec Alternate est peu pratique et cause de l'inconfort pour beaucoup, et d'ailleurs, le plus souvent le disque Alternate n'est pas à portée de main, alors considérons l'option avec le LiveCD.

Veuillez noter que LVM est contrôlé via le terminal, donc, afin de ne rien casser, vous devez d'abord apprendre à travailler plus ou moins confortablement avec lui. Familiarisez-vous également avec le fonctionnement de LVM et les concepts de base pour comprendre de quoi il s'agit. L'article n'est pas destiné aux débutants, mais à ceux qui ont déjà compris les bases d'Ubuntu.

Préparation préliminaire

Vous devez démarrer le système à partir du LiveCD et connecter l'ordinateur à Internet. Ensuite, ouvrez un terminal et installez les utilitaires nécessaires directement dans la session LiveCD avec la commande :

sudo apt-get install lvm2

Ça y est, vous pouvez maintenant commencer à travailler avec LVM. Mais d'abord, nous devons allouer un endroit où nous allons créer LVM. Pour ce faire, vous avez besoin de l'éditeur de partition Gparted, qui se trouve dans le menu Système → Administration.

En raison de la nature du chargeur de démarrage GRUB, il est préférable de créer/démarrer une petite partition séparée lors de l'utilisation de LVM. Disons que 200 Mo devraient suffire.

Utilisez Gparted / boot pour créer une partition et une partition sur laquelle vous allez déployer LVM. Si vous êtes prêt à allouer un disque dur entier à LVM, n'oubliez pas que votre partition Ubuntu / boot ne doit pas être placée sur LVM. Ainsi, vous avez besoin de deux partitions - 200 Mo sous / boot et tout le reste sous LVM. Ne choisissez aucun système de fichiers pour une partition LVM - juste section vide(non formaté). N'oubliez pas que pour appliquer toutes les modifications que vous avez apportées via Gparted, vous devez cliquer sur la coche verte dans le panneau supérieur ou sélectionner l'élément Appliquer dans le menu Edition.

Une fois que les modifications apportées au balisage ont été effectuées avec succès, vous devrez changer le type de la section que vous devez Linux LVM... Pour ce faire, cliquez sur touche droite sur la section, et sélectionnez "Gérer les drapeaux". Dans la fenêtre qui s'ouvre, cochez la case avec le nom lvm, attendez que toutes les modifications soient appliquées et fermez Gparted. Sur ce étape préparatoire fini.

Création de volumes logiques LVM

Maintenant il est temps de passer au direct création de LVM... Par exemple, nous supposerons que nous créons LVM au-dessus de la partition /dev/sda1. Dans ce cas, vous devez d'abord initialiser la partition physique avec la commande :

sudo pvcreate/dev/sda1 sudo vgcreate local/dev/sda1

Enfin, créez les volumes logiques dont vous avez besoin. Il convient de noter ici que, puisqu'il est facile d'augmenter la taille des volumes LVM directement dans un système en cours d'exécution, il est préférable d'allouer la taille minimale requise pour les volumes logiques. N'ayez pas peur qu'une grande quantité reste non allouée au sein du groupe de volumes, elle ne sera pas perdue. Dès que vous avez besoin d'espace supplémentaire, vous pouvez facilement l'ajouter à n'importe quel volume logique. Cependant, réduire la taille d'un volume logique est beaucoup plus difficile.

En règle générale, une installation système nécessite une partition racine, une partition /home, une partition swap et parfois une partition de données. Vous pouvez créer des volumes logiques pour ces quatre tâches à l'aide des commandes :

sudo lvcreate -L 7G -n root local sudo lvcreate -L 5G -n home local sudo lvcreate -L 3G -n swap local sudo lvcreate -L 10G -n data local

L'option -n, si vous ne l'avez pas encore compris, est le nom du volume logique, -L est sa taille.

Vous devez maintenant créer des systèmes de fichiers sur les volumes logiques créés.

Dans les versions modernes d'Ubuntu, vous devez créer des systèmes de fichiers manuellement avant l'installation. Sinon, le programme d'installation voudra créer une table de partition MBR au-dessus de chaque volume LVM, ce qui est hautement indésirable.

Cela peut être fait avec les commandes suivantes :

sudo mkfs.ext4/dev/local/root sudo mkfs.ext4/dev/local/home sudo mkswap -f/dev/local/swap sudo mkfs.ext4/dev/local/data

Notez que les noms de volumes logiques LVM sur le système apparaissent sous la forme / dev / (volumegroup_name) / (volume_name).

De plus, le système de fichiers ext4 réserve de l'espace pour les données système par défaut. Puisqu'il n'y aura jamais de données système sur /home, et encore plus sur la partition avec les fichiers utilisateurs, il vaut mieux annuler cette réservation afin de libérer de l'espace perdu. Pour cela, les commandes sont utiles

sudo tune2fs -r 0 / dev / local / home sudo tune2fs -r 0 / dev / local / data

N'annulez en aucun cas la réservation de la partition racine, sinon le système risque de ne plus fonctionner !

Enfin, vous souhaiterez peut-être attribuer une étiquette normale à la partition de données afin qu'elle s'affiche correctement sur le système installé. Vous pouvez le faire avec une commande comme celle-ci :

sudo tune2fs -L Données/dev/local/données

Vous pouvez maintenant procéder directement à l'installation sur les volumes logiques que nous avons créés.

Installation du système

L'installation elle-même est standard, mais lorsque vous êtes invité à choisir une méthode de partitionnement, sélectionnez mode manuel... Dans la fenêtre qui s'ouvre, vous verrez tous les volumes LVM que vous avez créés. Spécifiez un point de montage approprié pour chacun, mais ne cochez pas la case de formatage. Pour la partition de données, vous pouvez spécifier le point de montage/support/données. N'oubliez pas la petite partition / boot. Il doit spécifier le point de montage approprié et peut être défini sur ext2 en tant que FS, en plus, il doit être formaté.

Attendez la fin de l'installation, mais ne pas redémarrer l'ordinateur!

Si vous redémarrez votre ordinateur après l'installation, votre nouveau système ne démarre pas. Dans ce cas, vous devrez à nouveau accéder au LiveCD, installer les utilitaires pour travailler avec LVM, puis exécuter la commande sudo vgchange -a y

Suivez ensuite les instructions ci-dessous.

Activation de LVM sur le système installé

Vous avez installé le système, mais il n'en reste qu'un petit problème- dans l'Ubuntu installé, il n'y a pas d'utilitaires pour travailler avec LVM, ce qui signifie qu'il ne démarrera tout simplement pas. C'est assez facile à corriger.

Pour commencer, sans quitter le LiveCD, montez le volume logique que vous avez alloué sous la racine dans le dossier /mnt. Cela peut être fait avec la commande

sudo mount / dev / local / root / mnt

Montez ensuite la partition /boot en place (dans l'exemple ci-dessous, il s'agit de /dev/sda1) :

sudo mount / dev / sda1 / mnt / boot

Vous devez maintenant vous connecter système installé en utilisant chroot, mais vous devez d'abord connecter temporairement certains ressources système... Pour ce faire, exécutez les commandes

sudo mount --bind/dev/mnt/dev sudo mount --bind/proc/mnt/proc sudo mount --bind/sys/mnt/sys

Si soudainement dans votre système nouvellement installé / var ou d'autres répertoires système se trouvent sur des partitions différentes des partitions racine, n'oubliez pas de les monter à leur place dans / mnt.

Allez maintenant sur le système installé avec la commande

sudo chroot / mnt / bin / bash

Et installez les utilitaires nécessaires avec la commande

apt-get installer lvm2

Ça y est, l'installation est terminée. Fermez le terminal, appuyez sur Alt + Ctrl + Suppr et redémarrez votre ordinateur. N'oubliez pas de retirer le LiveCD du lecteur. L'ordinateur doit démarrer dans le système nouvellement installé.

La poursuite des travaux

Disons qu'à un moment donné, vous n'avez plus assez de 5 gigaoctets que vous avez alloués à la partition / home. Aucun problème. Voir combien d'espace inutilisé est laissé dans le groupe de volumes avec la commande

sudo vgdisplay local

Augmentez maintenant la taille du volume logique/dev/local/home à la taille désirée avec la commande

sudo lvresize -L 15G / dev / local / maison

Notez que lorsqu'il est utilisé de cette façon, le paramètre -L spécifie la taille complète souhaitée, pas un incrément. L'incrément peut être réglé à l'aide du symbole "+":

sudo lvresize -L + 5G / dev / local / maison

Après avoir augmenté la taille du volume logique, il ne reste plus qu'à étendre le système de fichiers sur l'ensemble du nouveau volume. Cela peut être fait avec la commande

sudo resize2fs / dev / local / home

Ça y est, la taille du volume logique a été augmentée.

En plus d'étendre la taille des volumes logiques à la volée, LVM fait beaucoup plus. Par exemple, créez des instantanés instantanés. Cependant, lisez toutes les subtilités du travail avec cette technologie dans des articles spécialisés.

Logical Volume Manager (LVM) est un système de gestion de volume de données très puissant pour Linux. Il vous permet de créer des volumes logiques au-dessus des partitions physiques (ou même des disques durs ininterrompus), qui dans le système lui-même seront visibles comme des périphériques de blocs ordinaires avec des données (c'est-à-dire comme des partitions ordinaires). Les principaux avantages de LVM sont que, premièrement, un groupe de volumes logiques peut être créé sur un nombre quelconque de partitions physiques, et deuxièmement, la taille des volumes logiques peut être facilement modifiée pendant le fonctionnement. De plus, LVM prend en charge les instantanés, la copie de partition à la volée et la mise en miroir de type RAID-1.

Si prévu bon travail avec LVM, vous pouvez démarrer un "shell" spécial avec la commande sudo lvm. La commande help affichera une liste de commandes.

Création et suppression

Comme indiqué, LVM est construit sur des partitions disque dur et/ou des disques durs entiers. Chacun des disques / partitions doit être créé volume physique(volume physique). Par exemple, nous utilisons pour Disque LVM sda et rubrique sdb2:

Pvcreate / dev / sda pvcreate / dev / sdb2

Sur ces volumes physiques nous créons groupe de volumes qui s'appellera, disons vg1:

Vgcreate -s 32M vg1 / dev / sda / dev / sdb2

Voyons les informations sur notre groupe de volumes :

Vgafficher vg1

Vous pouvez créer plusieurs groupes, chacun avec son propre ensemble de volumes. Mais ce n'est généralement pas nécessaire.

Maintenant, dans le groupe de volumes, vous pouvez créer volumes logiques lv1 et lv2 taille 20 Go et 30 Go, respectivement :

Lvcreate -n lv1 -L 20G vg1 lvcreate -n lv2 -L 30G vg1

Nous avons maintenant des périphériques de bloc / dev / vg1 / lv1 et / dev / vg1 / lv2.

Il reste à créer un système de fichiers sur eux. Il n'y a pas de différences avec les sections régulières :

Mkfs.ext4 / dev / vg1 / lv1 mkfs.reiserfs / dev / vg1 / lv2

La suppression de LVM (ou de ses parties individuelles, par exemple, des volumes logiques ou des groupes de volumes) se produit dans l'ordre inverse - vous devez d'abord démonter les partitions, puis supprimer les volumes logiques (lvremove), puis vous pouvez supprimer les groupes de volumes (vgremove) et des volumes physiques inutiles (pvremove)...

Ajout de volumes physiques

Pour ajouter un nouveau disque dur sdcà un groupe de volumes, créez un volume physique :

Pvcreate / dev / sdc

Et ajoutez-le à notre groupe :

Vgextend vg1 / dev / sdc

Maintenant, vous pouvez créer un autre lecteur logique(lvcreate) ou augmenter la taille d'un existant (lvresize).

Suppression de volumes physiques

Pour supprimer un disque dur d'un groupe de volumes de travail sda tout d'abord, nous transférons toutes les données de celui-ci vers d'autres disques :

Pvmove / dev / sda

Ensuite, nous le supprimons du groupe de volumes :

Vgreduce vg1 / dev / sda

Enfin, supprimons le volume physique :

Pvremove / dev / sda

En fait, la dernière commande supprime simplement l'indicateur indiquant que le disque est membre de lvm et n'est pas particulièrement utile. Après la suppression de LVM, le disque devra être repartitionné/reformaté pour une utilisation ultérieure.

Redimensionnement

LVM facilite le redimensionnement des volumes logiques. Pour ce faire, vous devez d'abord modifier le volume logique lui-même :

Lvresize -L 40G vg1 / lv2

puis le système de fichiers dessus :

Resize2fs / dev / vg1 / lv2 resize_reiserfs / dev / vg1 / lv2

Le redimensionnement d'un volume physique est une tâche complexe et généralement non appliquée. Il est plus rapide et plus sûr de supprimer le volume physique, de redimensionner la partition et de recréer le volume.

Comme c'est facile d'essayer

Si LVM n'est pas installé pour une utilisation ultérieure, mais "pour un aperçu", les disques et les partitions peuvent être remplacés par des fichiers. Ni l'un ni l'autre ne sera nécessaire lecteurs supplémentaires ni machines virtuelles... Nous allons créer des lecteurs virtuels et travailler avec eux. Par exemple, vous pouvez créer 4 disques de 1 Go, mais vous pouvez créer d'autres quantités plus ou moins importantes à votre guise. Nous créons les fichiers eux-mêmes qui simulent les appareils :

Mkdir / mnt / sdc1 / lvm cd / mnt / sdc1 / lvm dd si = / dev / zéro de =. / D01 compte = 1 bs = 1G dd si = / dev / zéro de =. / D02 compte = 1 bs = 1G dd si = / dev / zéro de =. / d03 compte = 1 bs = 1G dd si = / dev / zéro de =. / d04 compte = 1 bs = 1G

Créez des périphériques de bouclage à partir de fichiers :

Losetup -f --show ./d01 losetup -f --show ./d02 losetup -f --show ./d03 losetup -f --show ./d04

Pvcreate / dev / loop0 pvcreate / dev / loop1 pvcreate / dev / loop2 pvcreate / dev / loop3 vgcreate -s 32M vg / dev / loop0 / dev / loop1 / dev / loop2 / dev / loop3 lvcreate -n first -L 2G vg lvcreate -n seconde -L 400M vg ...

Instantanés

L'une des caractéristiques les plus importantes de LVM est sa prise en charge du mécanisme d'instantané. Les instantanés vous permettent de faire instantané un instantané d'un volume logique et l'utiliser à l'avenir pour travailler avec des données.

Exemples d'utilisation

LVM est activement utilisé lorsqu'un mécanisme d'instantané est nécessaire. Par exemple, ce mécanisme est extrêmement important lors de la sauvegarde de fichiers en constante évolution. LVM vous permet de geler un certain état du système de fichiers et de copier toutes les données nécessaires à partir de celui-ci, sans avoir besoin d'arrêter l'enregistrement sur le système de fichiers d'origine.

Les instantanés peuvent également être utilisés pour organiser le support serveur de fichiers avec le mécanisme de sauvegarde Samba, consultez l'article associé :

LVM avec LiveCD

Si vous devez travailler avec LVM à partir d'un LiveCD Ubuntu, vous devez suivre quelques étapes supplémentaires, car il n'y a pas d'utilitaires pour travailler avec LVM par défaut.

Vous devez d'abord installer ces utilitaires :

Sudo vgscan sudo vgdisplay YOUR_VGNAME

Sudo vgchange -a y

Cette commande doit signaler que tous vos volumes logiques sont actifs. Maintenant, vous pouvez travailler avec eux de la manière habituelle.



Vous avez aimé l'article ? Partagez-le