LVM – 1 (úvod, vytvoření oddílu)

LVM (Logical Volume Manager) lze do češtiny přeložit jako správce logických (diskových) oddílů. Tento krátký seriál poskytne návod, jak LVM (ve verzi 2) používat na linuxovém systému. Ve stručnosti si také řekneme, co LVM nabízí navíc oproti klasickému způsobu rozdělení disku. Dnes, po kratším teoretickém úvodu, začneme vytvářením a rušením jednoduchých oddílů.

Co LVM nabízí

… oproti klasickému rozdělení disku? LVM přináší jednotný systém správy diskových oddílů a odděluje tak oddíly se souborovými systémy a daty od fyzických disků. LVM umožňuje:

Snadné přidávání a rušení nových oddílů
U klasické tabulky rozdělení disku jsou možné pouze 4 primární oddíly, potom je třeba použít rozšířené. U LVM je počet prakticky neomezený. LVM také transparentně řeší volné místo pro nové oddíly, u klasického rozdělení disku je třeba mít při vytváření oddílu volné místo v jedné spojité oblasti.
Změnu velikosti oddílů
LVM umožňuje libovolně zvětšovat a zmenšovat oddíl (s určitými podmínkami například u zrcadleného oddílu).
Možnost vytvořit zrcadlený (obdoba RAID-1), prokládaný oddíl (RAID-0) i kombinace zrcadlení a prokládání.
Vkládat další pevné disky
A tím zvětšit dostupný prostor pro nové oddíly. LVM umožňuje i odebrat pevný disk bez ztráty dat, podmínkou je samozřejmě dostatek volného místa. LVM za běhu přesune oddíly na zbylé fyzické oddíly.
Snapshoty (i zapisovatelné)
Snapshot je obraz oddílu vytvořený v učitém čase. Hodí pro např. pro zálohu, kdy zálohovací skript kopíruje data ze snapshotu, který se mu tak nemění pod rukama.

Hierarchie LVM

Koncept LVM lze rozdělit do tří vrstev. Fyzický oddíl (Physical Volume – PV) je místo na blokovém zařízení (typicky pevný disk, oddíl či celé diskové pole). Aby šlo využít místo na disku (nebo třeba jen diskovém oddílu) pro LVM, je potřeba na tomto disku/oddílu (obecně blokovém zařízení) vytvořit PV.

Druhou vrstvou je skupina oddílů (Volume Group – VG). VG v sobě zahrnuje datový prostor ze všech fyzických oddílů do této skupiny přiřazených a toto místo distribuuje do jednotlivých logických oddílů (Logical Volume – LV).

LV tvoří poslední vrstvu konceptu LVM. Na LV už lze vytvořit systém souborů nebo jej používat jako kterékoliv jiné blokové zařízení. Vše je patrné ze schematu:

 

LVM vlastně spojí místo z pevných disků či jiných úložných zařízení (PV) do jednoho celku (VG) a poté jej opět rozdělí podle potřeby na jednotlivé oddíly (LV).

Inicializace pevných disků – Physical Volume

Pro použití pevného disku v LVM je nutné nejdříve vytvořit PV (physical volume – fyzický oddíl).

pvcreate /dev/sda

PV je možno vytvářet buď na celém disku (např. /dev/sda), nebo na oddílu (např. /dev/sda1 s typem 0x8e). Při vytváření PV na celém disku mohou ostatní operační systémy disk identifikovat jako prázdný a pokusit se vytvořit korektní tabulku oddílů (partition table), čímž poškodí PV a hrozí ztráta dat. Pokud se bude disk používat pouze v jednom OS, nepředstavuje tento způsob vytvoření problém. Obecně je však vhodnější vytvořit PV na oddílu. Pro ostatní OS to bude v nejhorším případě neznámý diskový oddíl (nebo systém souborů), na který ale nebudou zapisovat.

Informace o fyzických oddílech

Příkazem pvdisplay můžeme získat informace o fyzickém oddílu. Bez parametru vypíše informace o všech PV v systému (což je často užitečné, ne každý PV musí být zahrnut do skupiny, a je tak snadné na něj zapomenout), nebo lze výpis omezit pouze na jeden oddíl:

pvdisplay /dev/sda
  --- Physical volume ---
  PV Name               /dev/sda
  VG Name               data
  PV Size               8.00 GB / not usable 4.00 MB
  Allocatable           yes
  PE Size (KByte)       4096
  Total PE              2047
  Free PE               2047
  Allocated PE          0
  PV UUID               lvii22-MKBz-g4nO-zZO2-CsxP-SBmH-Ndij9W

Vytvoření skupiny oddílů – Volume Group

vgcreate data /dev/sda

Příkaz vgcreate jako první povinný parametr očekává jméno skupiny, za kterým následuje seznam diskových oddílů (zinicializování pomocí pvcreate), které chceme zahrnout do vytvářené skupiny.

Prohlížení informací o skupině

Pro zobrazení informací o skupině slouží příkaz vgdisplay. Bez parametru vypíše informace o všech logických skupinách v systému, s parametrem jména skupiny vypíše informace o té požadované skupině.

vgdisplay data
  --- Volume group ---
  VG Name               data
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               8.00 GB
  PE Size               4.00 MB
  Total PE              2047
  Alloc PE / Size       0 / 0
  Free  PE / Size       2047 / 8.00 GB
  VG UUID               5N1yvF-YMBO-301k-zBIg-ssY1-sLCC-kV8GwA

Výpis zobrazuje, kolik je dané skupině přiřazeno fyzických oddílů, počet vytvořených logických oddílů, volné místo a další údaje. Skupina „data“ je zatím prázdná.

Vytvoření logického oddílu

Logický oddíl již představuje místo, na kterém lze vytvořit systém souborů a ten následně připojit nebo jej používat jinak jako běžné blokové zařízení. Je tak obdobou klasického oddílu.

lvcreate --name video --size 2G data

Minimální parametry příkazu lvcreate jsou:

  • jméno vytvářeného oddílu (--name, v příkladu „video“),
  • velikost tohoto oddílu (--size),
  • jméno skupiny oddílů (v tomto příkladu „data“).

Po této akci zpravidla následuje vytvoření systému souborů a připojení pro běžné používání.

mkfs.ext3 /dev/data/video
mount /dev/data/video /mnt

Cesta k LV se může lišit podle nastavení udev. Obvykle vytváří link /dev/skupina/oddil nebo /dev/mapper/skupina-oddil

Rušení logického oddílu

Před samotných zrušením je třeba odpojit systém souborů.

umount /mnt
lvremove /dev/jmeno_skupiny/jmeno_oddilu

Příkaz lvremove se dotáže na potvrzení zrušení a poté oddíl zruší a zvětší se tak volné místo v dané skupině oddílů.

Přístě

V dalším dílu se naučíme přidávat (a také odebírat) další disky do skupiny a zvětšovat tak volné místo pro oddíly. Dále budeme zvětšovat i zmenšovat stávající oddíly i systém souborů.

Příspěvek byl publikován v rubrice CentOS, Linux, LVM. Můžete si uložit jeho odkaz mezi své oblíbené záložky.

3 komentáře u LVM – 1 (úvod, vytvoření oddílu)

  1. Pingback: Připojení systémů souborů z RAW image KVM | Heronovo

  2. Pingback: Btrfs, lepší systém souborů – teorie | Heronovo

  3. Pingback: Ukládání souborů do DB | Heronovo

Komentáře nejsou povoleny.