LVM – jiný pohled na oddíly

Každý jistě někdy instaloval operační systém a kladl si otázku: „Jak rozdělit pevný disk?“. V prvopočátcích se vytvářely samostatné oddíly, jejichž velikost se většinou neměnila až do další čisté instalace systému. Ale co když dojde místo například na oddílu /usr, nebo potřebujeme domovský oddíl větší, než je velikost jednoho disku?

Tento problém pomůže vyřešit LVM. LVM je abstraktní vrstva, která slučuje úložný prostor do logických skupin. Každá skupina může obsahovat libovolný počet oddílů. Nejčastěji lze potkat LVM postavená nad RAID, ale v domácích PC lze RAID vynechat.

lvm

Příkazy související s LVM

LVM obsahuje tři skupiny příkazů. První, začínající písmeny pv, slouží ke správě fyzických zařízení. Druhá skupina začíná písmeny vg a obsluhuje skupiny logických oddílů. Poslední sadou příkazů jsou lv, které dokáži manipulovat s logickými oddíly.

Praktická ukázka

Prvním krokem je tvorba lvm oddílů, která je stejná jako v případě RAID, liší se pouze typem oddílu 8e.

Po vytvoření lvm oddílů je nutné na nich vytvořit „souborový systém“ lvm a hned ověřit, zda se tak povedlo učinit.

Příkazy terminálu:
#pvcreate /dev/sd[abcd]1
#pvscan
PV /dev/sda1 lvm2 [8.00 GiB]
PV /dev/sdb1 lvm2 [8.00 GiB]
PV /dev/sdc1 lvm2 [8.00 GiB]
PV /dev/sdd1 lvm2 [8.00 GiB]
Total: 4 [32.00 GiB] / in use: 0 [0 ] / in no VG: 4 [32.00 GiB]

V dalším kroku je nutné fyzická zařízení přiřadit do logických skupin v rámci kterých lze vytvářet oddíly. Skupinu lze vytvořit rovnou se všemi zařízeními, ale to bychom se vyhli rozšiřování skupiny o nové disky.

Příkazy terminálu:
#vgcreate /dev/sda1
#pvscan
PV /dev/sda1 VG vgtest lvm2 [8.00 GiB / 8.00 GiB free]
PV /dev/sdb1 lvm2 [8.00 GiB]
PV /dev/sdc1 lvm2 [8.00 GiB]
PV /dev/sdd1 lvm2 [8.00 GiB]
Total: 4 [31.99 GiB] / in use: 1 [8.00 GiB] / in no VG: 3 [24.00 GiB]

Ostatní zařízení lze přidat příkazem vgextend:

Příkazy terminálu:
#vgextend /dev/sd[bcd]1
#pvscan
PV /dev/sda1 VG vgtest lvm2 [8.00 GiB / 8.00 GiB free]
PV /dev/sdb1 VG vgtest lvm2 [8.00 GiB / 8.00 GiB free]
PV /dev/sdc1 VG vgtest lvm2 [8.00 GiB / 8.00 GiB free]
PV /dev/sdd1 VG vgtest lvm2 [8.00 GiB / 8.00 GiB free]
Total: 4 [31.98 GiB] / in use: 4 [31.98 GiB] / in no VG: 0 [0 ]

Nyní jsou všechny disky v lvm skupině a lze na nich vytvořit virtuální oddíly.

Příkazy terminálu:
#lvcreate -L 5G -n root vgtest
Logical volume „root“ created
#pvscan
PV /dev/sda1 VG vgtest lvm2 [8.00 GiB / 3.00 GiB free]
PV /dev/sdb1 VG vgtest lvm2 [8.00 GiB / 8.00 GiB free]
PV /dev/sdc1 VG vgtest lvm2 [8.00 GiB / 8.00 GiB free]
PV /dev/sdd1 VG vgtest lvm2 [8.00 GiB / 8.00 GiB free]
Total: 4 [31.98 GiB] / in use: 4 [31.98 GiB] / in no VG: 0 [0 ]
#lvcreate -L 1G -n opt vgtest
Logical volume „opt“ created
#lvcreate -l 100%FREE -n home vgtest
Logical volume „root“ created
#pvscan
PV /dev/sda1 VG vgtest lvm2 [8.00 GiB / 0 free]
PV /dev/sdb1 VG vgtest lvm2 [8.00 GiB / 0 free]
PV /dev/sdc1 VG vgtest lvm2 [8.00 GiB / 0 free]
PV /dev/sdd1 VG vgtest lvm2 [8.00 GiB / 0 free]
Total: 4 [31.98 GiB] / in use: 4 [31.98 GiB] / in no VG: 0 [0 ]

Lvm oddíly jsou dostupné jako klasická bloková zařízení v „/dev/název skupiny/název lvm oddílu“. Teprve na těchto oddílech se tvoří souborové systémy (ext4,xfs a další).
Oddíly lze libovolně zvětšovat až do kapacity přidělené lvm skupině. Lze je také zmenšovat, ale pouze do takové míry, aby se nepřišlo o již uložená data. Samozřejmostí při práci s oddíly je záloha.

Příkazy terminálu:
#lvresize -r -L -1G /dev/vgtest/root
fsck from util-linux 2.20.1
/dev/mapper/vgtest-root: clean, 11/327680 files, 55902/1310720 blocks
resize2fs 1.42.8 (20-Jun-2013)
Resizing the filesystem on /dev/mapper/vgtest-root to 1048576 (4k) blocks.
The filesystem on /dev/mapper/vgtest-root is now 1048576 blocks long.Reducing logical volume root to 4.00 GiB
Logical volume root successfully resized

Shrnutí

LVM boří fyzické hranice disků a umožňuje tvorbu oddílů podle aktuálních potřeb a za běhu. Samo o sobě podporuje RAID 0, 1 a 5, nicméně se většinou používá nad klasickým RAIDem. Výhodou LVM je snadná migrace dat a výměna starých disků za nové bez nutnosti vytvářet další oddíly a také přidávání úložného prostoru. Nevýhodou LVM (pokud není postaveno nad RAID 1 a výše) je větší náchylnost ke ztrátě dat, jelikož lvm samo určuje (není-li specifikováno uživatelem) na který fyzický disk se data uloží. Zálohování je tedy více než doporučeno.

Štítky , , , , , .Záložka pro permanentní odkaz.

12 reakcí na LVM – jiný pohled na oddíly

  1. ulo říká:

    Pěkné a srozumitelné, díky za článek 🙂

  2. jirka sirka říká:

    Je nějakej GUI pro správu, třeba jako propracovanej v Suse linuxu? Přes příkazovej řádek člověk musí znát moc věcí

    • Satapouch říká:

      A to je na škodu? Příkazový řádek je základ práce v Linuxu a každý jeho uživatel by měl znát alespoň základy práce s ním. Pak je možné předcházet a hlavně napravit řadu špatných zásahů do systému.

      • jirka sirka říká:

        Je fakt že třeba konkrétně Mint může používat i člověk, který třeba příkazový řádek nikdy neviděl a muže s tímhle opr.systémem být velmi spokojený. Běžný uživatel by asi neřešil LVM svazky a změnu oddílů na disku, takže proč GUI? Používal jsem vždycky opensuse kde byl yast se skvělým nastavením systému, což mi trochu chybí. Ale jinak Mint je můj favorit 🙂

      • Bohatyr říká:

        Takovou dobu v podstatě od oznámeného ukončení podpory Win XP tu děláš agitku linuxu a to převážně pro budoucí, začínající uživatele mintu, což je fajn a patří tě dík, ale nebylo by také na škodu odpovědět uživateli na skromný dotaz, namísto udělování rad, co by podle tebe každý uživatel měl, či neměl. Pokud je mint pro všechny, jak se tu často opakovalo, mohl by jsi jim dát i prostor, jak jej chtějí používat nebo prostě neodpovídat tímto způsobem. Mimo jiné, právě pouze základní znalost terminálu, dává do rukou začátečníkovi mocnou zbraň, se kterou v linuxu napáchá nejčastěji škody. Vědět ještě neznamená umět. Takže nechme Běžného Frantu Uživatele „klikat“, když se mu chce a jakmile projeví zájem o vyšší znalost terminálu, mu nabídnout pomocnou ruku, bude-li o to stát.
        Článek o LVM se mi líbí, jen bych jej asi zařadil do nějaké sekce pro pokročilejší nebo k administraci linuxu.
        Jirko Sirko: ano GUI existuje, pokud spustíš Synaptic, vyhledáš si lvm, bude ti nabídnut balíček jménem system-config-lvm, je to GUI pro lvm. Nebo v terminálu: sudo apt-get install system-config-lvm.

        • Satapouch říká:

          Tak promiň, že jsem tu vyjádřil svůj názor na věc. Mám ho hold jiný než Ty a pokud noví uživatelé budou přistupovat k Linuxu tak, že to všechno půjde samo jak falešně rozšířila nejmenovaná firma a následně spamovat různá fóra neustále se opakujícími dotazy na naprosté základy práce v Linuxu, tak se také nikam nedostaneme. V každém mém článku na téma přechodu jsem na toto upozorňoval – bez učení to nepůjde. A jestli pochybuješ o mém podávání pomocné ruky pro ty, kteří o to slušně požádají, tak Ti to také vyvracet nebudu.

          • jirka sirka říká:

            Díky, ten system-config-lvm znám, ale to už raději ten příkazovek řádek, ale někdy ten GUI dost usnadnuje práci i čas, nevidim v tom problém. Linux používám asi 11 let tak už něco umim. Teď mě ještě napadá taková vtipná věc kterou jsem si předevčírem uvědomil, když mi jedna známa donesla notas na opravu, a to , že lidi vlastně neumí ani používat ten windous, a tak nebudou umět ani linux, prostě si to tam nějak nainstalujou, nebo známej jim to tam nainstaluje, a pak to používaj dokud to uplně nezlikvidujou a jde se přeinstalovávat 🙂 a tak to dělá většina běžných uživatelů. My máme uplně jiný naroky bych to tak viděl

      • tomkom18 říká:

        Ja napríklad tiež poznám „základy“ príkazového riadku, ale toto je fakt dosť husté. V mojom živote sú aj iné veci ako sedieť pri bedni a ťukať do terminálu toľko údajov; a nie som určite sám. Nie som lenivý, ale proste na to nemám čas. Mám po 40ke a som rád keď si môžem niečo nastaviť pekne v GUI, a nepotrebujem na to špeciálnu prípravu. Toto všetko je o opakovaní a sústavnej robote na PC. Lebo ak sa tomu nevenuješ tri, štyri mesiace, tak si totálne mimo. Asi by som už nevstrebal toľko informácií pri mojej práci a iných povinnostiach.
        A k článku len toľko, že som si ho prečítal a je to super zrozumiteľný návod ako na to. Ani som o takej možnosti nevedel. Bude sa hodiť možno niekedy.
        Opakovať, učiť sa a opakovať a učiť sa=terminál 🙂

    • segfault říká:

      Člověk musí znát moc i věcí i když používá GUI. Jinak by si mohl akorát vyrobit bordel v počítači, čí ho jiným způsobem znefunkčnit.

      Jinak pěkný manuál je zde: https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/4/html/Cluster_Logical_Volume_Manager/index.html

      • Old Bobby říká:

        Článek je pro pokročilého uživatele užitečná informace; je napsán precizně a dobře, i když by neuškodil nějaký „polopatistický příklad“. Je to poněkud těžší téma, což jistě segfault ví, ale právě proto by se mohla rozvést zajímavým příkladem. Uvádím pouze svůj názor na použití lvm; nicméně též sdílím názor Bohatyra, se kterým se nedá nesouhlasit.
        Možná, že by v podobných příspěvcích mohli autoři uvést pro jakou cílovou skupinu je ta která věc určená, aby si náhodou někdo nechtěně nerozhodil fungující komp.
        Svoje příspěvky zpravidla uvádím, že jsou určeny PÚB – pro úplně blbé, protože každý jednou začínal – a to vidím trochu i pod kapotu a píši proto napříč spektrem. Nový úhel pohledu ovšem uživatel získává postupně a nějaký čas to trvá.

    • Bohatyr říká:

      Našel jsem velice uživatelsky přívětivé GUI pro lvm a rád se podělím:

      sudo apt-get install kvpm

  3. Satapouch říká:

    Na základě výše uvedených připomínek jsem zřídil dvě nové rubriky: Pro začátečníky a Pro pokročilé. Jednotlivé články do nich postupně zpětně přiřadím (je jich mnoho, trpělivost pls) a autory tímto žádám, aby každý svůj příspěvek v budoucnu do jedné z těchto rubrik přiřadili. Díky.