Stále více našich počítačů je vybaveno



Podobné dokumenty
Linux RAID, LVM. Ondřej Caletka

Linux RAID, LVM. 27. listopadu Uvedené dílo podléhá licenci Creative Commons Uved te autora 3.0 Česko.

Administrace Unixu a sítí

Bloková zařízení v LINUXu Jan Vrbata - GOPAS

Instalační a uživatelský manuál pro Linux Mission 1.0. David Häring a kolektiv autorů LinuxZone

Linux CryptoFS. Petr Novický

RAID základní informace

Postup přechodu na podporované prostředí. Přechod aplikace BankKlient na nový operační systém formou reinstalace ze zálohy

Linux připojování zařízení. 6 praktická část

2.2 Acronis True Image 19

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

Instalace SQL 2008 R2 na Windows 7 (64bit)

Instalace Microsoft SQL serveru 2012 Express

LVM2 logical volume management

LINUX ADRESÁŘOVÁ STRUKTURA. Co to, hrome, je? V této lekci se budeme brouzdat adresáři. SPŠ Teplice - 3.V

MS SQL Server 2008 Management Studio Tutoriál

Implementace LMS MOODLE. na Windows 2003 Server a IIS 6.0

Instalace Linuxu Ubuntu v programu VirtualBox

Disková pole (RAID) 1

1 Návod na instalaci prostředí LeJOS-NXJ a přehrání firmwaru NXT kostky

Souborové systémy Mgr. Josef Horálek

Zálohování v MS Windows 10

1.5.2 Číselné soustavy II

Technologické postupy práce s aktovkou IS MPP

Instalace SW VIS z internetu - Opakovaná instalace, instalace upgrade

Ladění ovladačů pomocí virtuálního stroje...2 Úvod...2 Ladění ovladačů pomocí dvou fyzických počítačů...2 Ladění ovladačů pomocí jednoho fyzického

ZÁLOHA A OBNOVA ABRA GEN

EVIDENCE DOCHÁZKY SE ČTEČKOU INTAGRAL. příručka uživatele

1 Správce licencí Správce licencí Správce licencí Start > Všechny programy > IDEA StatiCa > Správce licencí Soubor > Správce licencí Licence

Windows 7 instalace krok za krokem

Popis instalace programu OCEP

Excel a externí data KAPITOLA 2

Popis instalace programu OCEP

T-Mobile Internet. Manager. pro Mac OS X NÁVOD PRO UŽIVATELE

František Hudek. červen ročník

NAS 251 Seznámení s RAID

BM Software, Databáze Docházky 3000 na NAS serveru (pro MySQL) Němčičky 84, Němčičky u Břeclavi. Úvodní informace:

Disková pole (RAID) 1

Přednáška 2. Systémy souborů OS UNIX. Nástroje pro práci se souborovým systémem. Úvod do Operačních Systémů Přednáška 2

Návod k instalaci. Nintex Workflow Návod k instalaci

ODBORNÝ VÝCVIK VE 3. TISÍCILETÍ

Vložení expiračního kódu do spojů ALCOMA

BRICSCAD V15. Licencování

Rocrail. Nejprve: Obecný úvod. Instalace

IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ

Server je v informatice obecné označení pro počítač, který poskytuje nějaké služby nebo počítačový program, který tyto služby realizuje.

Instalace a od-instalace aplikace Google / Android

Nintex Workflow 2007 je nutné instalovat na Microsoft Windows Server 2003 nebo 2008.

Administrace OS Unix. filesystém UFS mount snapshot RAID

Vložení expiračního kódu do spojů ALCOMA

Postup instalace síťové verze Mount Blue

Stručná instalační příručka SUSE Linux Enterprise Server 11

Instalace MS SQL Server Express a MS SQL Server Management Express

INSTALACE PRODUKTU ONTOPIA KNOWLEDGE SUITE

Hromadná korespondence

ABRA POS PRINT SERVER

Po prvním spuštění Chrome Vás prohlížeč vyzve, aby jste zadali své přihlašovací údaje do účtu Google. Proč to udělat? Máte několik výhod:

Instalace. Návod na instalaci a licencování ESI[tronic] Spuštění instalace z DVD ESI[tronic] 2.0 DVD 1 - soubor Setup.exe. 4.

Nápověda pro možnosti Fiery 1.3 (server)

1 Uživatelská dokumentace

Nápověda pro možnosti Fiery 1.3 (klient)

František Hudek. duben 2013

IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ

Manuál QPos Pokladna V1.18.1

Storage... co je nového (SSD!)... a co se zatím nepovedlo rozbít:-)

Návod k obsluze USB keyloggeru se záznamem času

Microsoft Office. Word hromadná korespondence

EPLAN Electric P8 2.7 s databázemi na SQL serveru

Téma 12: Správa diskových jednotek a system souborů. Téma 12: Správa diskových jednotek a systémů souborů

ZÁLOHA A OBNOVA ABRA GEN

Uživatelská příručka

ZÁLOHA A OBNOVA ABRA GEN

Windows a Linux. Přednáška číslo 7

Návod k obsluze IP kamery Zoneway. IP kamery jsou určené pro odbornou montáž.

STATISTICA Téma 1. Práce s datovým souborem

Práce s disky a ISO soubory

Redakční systém Joomla. Prokop Zelený

TDP RPort 1.0. uživatelská příručka. 12. července 2007 Na slupi 2a, Praha 2

Ing. Michal Martin. Spojení PLC CLICK s NA-9289

PROPOJENÍ EASY-OPC SERVER A MICROSOFT EXCEL

Operační systémy 1. Přednáška číslo Struktura odkládacích zařízení

Instalace SW VIS z internetu - Nová instalace. Spuštění instalačního programu. Podrobný popis nové instalace SW VIS

Výukový materiál Hardware je zaměřený především na výuku principů práce hardwaru a dále uvádí konkrétní příklady použití.

Návod k práci s programem MMPI-2

Popis instalace programu OCEP (DEMOVERZE i ostrá verze)

Manuál QPOS Pokladna V 2.0

Střední odborná škola a Střední odborné učiliště, Hořovice

Operační systémy 2. Struktura odkládacích zařízení Přednáška číslo 10

IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ

Instalační Příručka. Verze 10

Datová úložiště. Zdroj: IBM

IFTER-EQU Instalační manuál

Operační systémy 1. Přednáška číslo Souborové systémy

Multimediální prezentace MS PowerPoint I

Úvod do Unixu. man: příkaz pro zobrazení nápovědy k danému příkazu, programu (pokud je k dispozici), např. man cp. pwd: vypíše cestu k aktuální pozici

Správa licencí pro možnosti Fiery v klientském počítači

Fides Software Storage Administrator

Signalizace a ovládací prvky. Konektory a připojení

Instalace programu OZO. z www stránek či odkazu z u

Transkript:

Softwarový RAID a LVM Piotr Wolny DVD Po spuštění Linux+ Live DVD je možno otestovat probíranou problematiku. Na DVD disku Na DVD disku se nachází programy popisované v článku. Stále více našich počítačů je vybaveno více než jedním pevným diskem. Obvykle na nich vytváříme několik oddílů, protože GNU/Linux nám umožňuje připojování různých částí souborového systému (např. /usr nebo /home) z nezávislých zařízení. Tím ale nekončí možnosti využití pevných disků v GNU/Linuxu. Již dlouho tento systém podporuje dva pokročilé mechanismy ukládání dat: Softwarový RAID a Logical Volume Manager. S jejich použitím můžeme zvětšit výkonnost disků, a také zvýšit bezpečnost uložených dat. I když se Softwarový RAID a Logical Volume Manager (LVM) často spojují s velkými servery vybavenými desítkami disků, s úspěchem je můžeme použít také v domácích počítačích vybavených dvěma či třemi pevnými disky. Navíc je LVM užitečný i při použití s jedním diskem. RAID a LVM Historicky je starším zařízením softwarový RAID. Idea Redundant Arrays of Inexpensive Disks není tak stará, protože pochází z roku 1987. Tehdy byla vypracována koncepce spojení mnoha levných disků v jedno velké a rychlé zařízení. Aby havárie jednoho z nich nezpůsobila ztrátu dat na celé matrici, byl v koncepci použit nadbytečný disk (anglicky redundant) nezbytný pro rekonstrukci dat v případě havárie. Tradiční RAID se vytváří hardwarově, nejčastěji spojením SCSI disků, které jsou po připojení k počítači viditelné jako jedno zařízení. GNU/Linux nám umožňuje vybudování RAID softwarovým spojením do pole a mohou to být zároveň zařízení SCSI, IDE stejně jako SATA. Pro informace o různých typech RAID polí si přečtěte rámeček Úrovně RAID. Obecně RAID umožňuje: zvětšení bezpečnosti dat, pokud využíváme nadbytečné disky (bez nadbytečných disků je náš RAID více náchylný k havárii než samostatné disky); rychlost čtení a zápisu dat se zvyšuje, pokud použijeme stripping na dva nebo více nezávislých fyzických zařízení; spojení několika nezávislých zařízení v jeden souborový systém může zvětšit pohodlí při administraci systému na určitých konfiguracích. Pamatujme však na to, že RAID má jisté hranice: jednou vytvořené zařízení RAID nemůže být rozděleno na oddíly, což Obrázek 1. V GNU/Linuxu můžeme disky různého typu spojovat do jednoho zařízení RAID nebo LVM 54 leden 1/2005

softwarový raid a logical volume manager hardware občas způsobuje potřebu konfigurování několika RAID zároveň; jednou vytvořený RAID nemůže být rozšířen o více disků. Díky RAID, co počítač vidí jako jedno blokové zařízení, může být ve skutečnosti kombinace několika oddílů na různých pevných discích. Logical Volume Manager jde o mnoho dále. Jím zpřístupněné blokové zařízení se může fyzicky nacházet na libovolném množství disků nebo oddílů ale je umožněno jejich zvětšování, zmenšování nebo přenášení. Funguje to tak, jakoby jedna tabulka rozdělení obsahovala nejenom několik disků, ale také umožňovala přidávání/ odstraňování, zvětšování/zmenšování oddílů bez jakékoliv přestávky při fungování systému často také bez odpojení oddílů. Možné je také přidávání dalších disků. Shrneme-li to, díky LVM dostaneme: celkovou svobodu v přidělování fyzických disků nebo oddílů jako blokových zařízení v systému (např. zařízení připojené jako /home se může skládat z jednoho IDE disku a poloviny SCSI disku); možnost jednoduchého zvětšování a zmenšování (pokud to systém souborů umožňuje) zařízení viděných operačním systémem a jejich přenášení mezi disky (to zahrnuje také možnost jednoduchého přidávání a odebírání disků do systému); rozdělení (anglicky stripping) dat na dvě nebo více nezávislých zařízení pro zvětšení výkonu; funkci zjednodušující pořizování bezpečnostních záloh (snapshot). Vadou linuxového LVM je chybějící podpora nadbytečných disků, ale můžeme jej propojit se softwarovým RAID-1 pro dodatečnou bezpečnost. Vytváříme softwarový RAID Softwarový RAID můžeme založit na nejméně dvou libovolných oddílech. Aby to celé mělo nějaký smysl, měly by se oddíly nacházet na samostatných discích. Vytvoření RAID na dvou oddílech jednoho disku nezvětší bezpečnost dat ani nezrychlí diskové operace. Do jednoho RAID pole můžeme spojit oddíly z úplně odlišných disků např. IDE, SCSI nebo SATA ale zpravidla bude tento hybrid pracovat rychlostí nejpomalejšího z nich. Pokud chceme spojit dva IDE disky, měly by se nacházet na různých IDE kanálech, pokud budou připojeny jedním kabelem, zpozorujeme výrazný pokles výkonu. Softwarový RAID je realizován přímo jádrem systému. Jádro musí obsahovat podporu pro RAID. Při konfiguraci jádra, v části Multi- support (RAID and LVM), musíme označit RAID support a požadované módy RAID pole (můžeme označit všechny). Nejlepší je zkompilovat do jádra podporu RAID pole natrvalo. Nemusíme také sami kompilovat jádro RAID a LVM při instalaci distribuce Instalátory většiny moderních distribucích umožňují vytvoření zařízení RAID a LVM již při instalaci GNU/Linuxu. Například v Aurox Linuxu postačí, pokud vybereme volbu Ruční vytvoření oddílů, pomocí programu Disk Druid budeme moci vytvořit RAID, LVM či dokonce LVM na RAID. V novějších verzích Mandrakelinuxu musíme vybrat ruční rozdělení na oddíly a později se navíc ještě přepnout do rozšířeného módu. Instalátor této distribuce má podobné možnosti, ale vypadá to tak, že neumožňuje vytvoření LVM na RAID. Pokud víme jak fungují zařízení RAID a LVM, jejich vytvoření s pomocí některého z těchto instalátorů by nemělo činit žádné problémy. Například abychom vytvořili RAID v Aurox Linuxu, klikneme na RAID, vybereme první z disků a označíme Vytvořit oddíl softwarového RAID. Následně to stejné opakujeme pro další disky. Nakonec ještě jednou klikneme na RAID a vybereme Vytvořit zařízení RAID. Pak budeme moci zadat jeho typ, bod připojení a systém souborů, který na něm bude vytvořen. LVM vytváříme podobně nejdříve vytvoříme jeden nebo několik oddílů typu physical volume LVM a později klikneme na LVM a vytvoříme příslušné logické svazky. Mé zkušenosti s tvořením RAID a LVM s těmito instalátory distribucí nejsou dobré. Doporučuji instalaci na tradiční zařízení a teprve později vytvoření RAID nebo LVM a následný přenos příslušných adresářů. Obrázek 2. Ovladače RAID a LVM najdeme v linuxovém jádře a můžeme se spolehnout to dodávané s distribucí. Většina novějších distribucí najdeme moduly linear, raid0, raid5 atd., nutné pro práci pole. Stačí použít příkaz cat /proc/mdstat a zjistíte, zda to vaše obsahuje podporu pro softwarový RAID. Pokud se zobrazí hlášení o chybějícím souboru, musíme si jádro nakonfigurovat a zkompilovat sami. Softwarový RAID je v jádře GNU/ Linuxu již dlouhou dobu je standardně přítomna v jádrech série 2.4.x a 2.6.x, ale existují také možnost použití s jádry 2.2.x a dokonce i 2.0.x. Všechny zde popisované činnosti jsem prováděl na jádře 2.6.9, měli by vypadat identicky i ve starších verzích jádra zahrnujíc v to sérii 2.4.x. Mimo podpory v jádře systému budeme potřebovat ještě dva balíčky: mdadm a raidtools (v Debianu raid- www.lpmagazine.org 55

tools2). Ten první obsahuje nástroje pro aktivování a zastavování RAID zařízení a druhý přidává základní nástroje pro tvorbu polí. Tyto balíčky najdete ve všech populárních linuxových distribucích. Řekněme, že náš operační systém je nainstalován na disku sda a na RAID chceme využít IDE disky: hda a hdd. Na obou discích jsme vytvořili oddíl, přičemž na RAID mají být určeny hda2 a hdd2. Předtím než začneme vlastní nastavování, můžeme si otestovat rychlost těchto disků před tím, než z nich uděláme pole. Jak dobře otestovat výkonnost disků s využitím programu Bonnie++, popisuji v rámečku Jak testovat disky? Při návrhu systému, ve kterém hraje důležitou roli výkonnost disků, je dobré se řídit doporučeními programu Bonnie++ nebo podobného. V tomto článku, abych rychle a názorně ukázal rozdíly mezi konfiguracemi RAID využiji program dd. Například po vytvoření oddílu hda2 souborového systému ext2, jeho připojení na /mnt/test/ jsem spustil příkaz: cd /mnt/test; dd if=/dev/zero of=vymaz_mne count=2000000. Jako výsledek jsem obdržel následující rychlost lineárního zápisu jednoho velkého souboru: 1024000000 bytes transferred in 28,490542 seconds (35941752 bytes/sec) Při využití souborového systému ext3 vzrostl čas potřebný na vykonání této operace narostl na 32,8 sekundy. RAID-0 Nejdříve vyzkoušíme RAID-0. Abychom jej vytvořili, musíme vytvořit soubor /etc/ raidtab. Nejdříve do něj zapíšeme následující řádky: raiddev /dev/md0 raid-level 0 nr-raid-disks 2 persistent-superblock 1 chunk-size 4 raid-disk 0 raid-disk 1 /dev/hda2 /dev/hdd2 Jak je vidět, soubor není komplikovaný. První řádek popisuje, kterého zařízení se tato konfigurace týká. Za md0 můžeme mít libovolné množství jiných zařízení (samozřejmě by se měly nacházet na jiných oddílech). Volbou raid-level nastavujeme typ pole, v tomto případě RAID-0 čili stripe. V nr-raid-disk zadáváme kolik oddílů má fungovat v tomto zařízení; persistent-superblock způsobí, že v superblocích zadaných později budou zapsány informace potřebné pro automatické rozpoznání pole při spouštění jádra systému; chunk-size nastavuje na jaké nejmenší jednotky v kilobajtech budou dělena data při zápisu do pole (není možno jednoznačně říci, jaká hodnota zajistí nejlepší výkon, ale zjednodušeně můžeme říci, že bude rovna block size našeho souborového systému). Dále vyjmenováváme a číslujeme použité oddíly. Dalším krokem je změna identifikátorů oddílů s užitím programu fdisk, na kterých bude pole pracovat. Měli by být typu fd, čili Linux raid auto. Bez tohoto úkonu bude pole pracovat, ale nebude automaticky detekováno jádrem systému. Když máme všechno hotovo, spustíme příkaz mkraid /dev/md0. Samozřejmě, že jeho spuštěním přijdeme o všechna data, která jsme měli na oddílech vyjmenovaných v /etc/raidtab. Jako výsledek bychom měli obdržet něco takového: handling MD /dev/md0 analyzing super-block disk 0: /dev/hda2, 14659312kB, raid superblock at 14659200kB disk 1: /dev/hdd2, 18922680kB, raid superblock at 18922560kB Jak vidíme, mimo to, že se oddíly liší velikostí, bylo pole vytvořeno. Teď si jej můžeme prohlédnout pomocí příkazu cat /proc/mdstat. Měli bychom spatřit například něco takového: Personalities : [linear] [raid0] [raid1] [raid5] [raid6] [raid10] md0 : active raid0 hdd2[1] hda2[0] 33581760 blocks 4k chunks unused s: <none> Od této chvíle pracujeme se zařízením /dev/md0 jako s oddílem pevného disku. Můžeme např. použít příkazy: # mkfs.ext3 /dev/md0 # mount /dev/md0 /mnt/test/ # cd /mnt/test/ # dd if=/dev/zero of=vymaz_mne count=2000000 Na mém systému tento rychlý test zobrazil: 1024000000 bytes transferred in 18,410448 seconds (55620591 bytes/sec) Obrázek 3. Všechny potřebné informace pro vytvoření RAID a LVM můžeme nalézt v angličtině v příslušných HOWTO Vidíme skoro dvojnásobný nárůst rychlosti zápisu tohoto souboru (z 32,8 na 18,4 sekundy). Podobné pole vytvořené v mém počítači na discích SATA si se zápisem poradilo za 14 sekund. Tímto způsobem jsme získali zařízení, které by mělo fungovat značně rychle- 56 leden 1/2005

softwarový raid a logical volume manager hardware ji než samostatný disk, jak při operacích čtení tak při zápisu. Můžeme jej připojit v libovolném místě systému souborů, ve kterém se objevuje intenzivní používání disků např. v /var/www. Stačí pouze patřičný zápis do /etc/fstab a přenesení starých dat na nové zařízení. Pokud chceme použít pole v několika různých částech souborového systému, musíme přidat více disků nebo již vlastněné disky rozdělit na více oddílů, následně je definovat v /etc/raidtab další zařízení /dev/md1, md2 atd., všechny inicializovat (mkraid), naformátovat a připojit. Pokud jsme správně nainstalovali balíčky mdadmin a raidtools, měly by skripty odpovědné za zamykání systému zastavit pole (vykonat příkaz raidstop s příslušnými parametry), než budou naše disky odpojeny. V mnoha distribucích bude také fungovat odeslání upozorňovacího e-mailu administrátorovi systému o havárii některého z disků. Zmiňované balíčky mají ještě několik dalších funkcí je dobré prohlédnout si jejich konfigurační soubory v adresářích /etc/default/ a /etc/mdadm/. RAID-1 Řekněme, že jsme se rozhodli změnit svou konfiguraci, vytvořením RAID-1 místo RAID-0 je nutno říci, že teprve RAID-1 je skutečným RAID, protože v RAID-0 nejsou nadbytečné disky. Než začneme vytvářet nové zařízení, musíme deaktivovat předchozí. Prvním krokem je odpojení souborových systémů v poli (např. umount /var/www). Následně provedeme příkaz raidstop /dev/md0. Teprve teď můžeme změnit nastavení oddílů na discích a vytvořit nové pole. Pokud tyto kroky neprovedeme ani konfigurace nového pole ani změny v nastavení oddílů nebudou trvalé a navíc mohou způsobit nenávratnou ztrátu dat. Konfigurační soubor /etc/raidtab pro RAID-1 je identický s použitým pro RAID-0: raiddev /dev/md0 raid-level 1 nr-raid-disks 2 persistent-superblock 1 chunk-size 4 raid-disk 0 raid-disk 1 /dev/hda2 /dev/hdd2 Následně provedeme příkaz mkraid /dev/ md0 a obdržíme výpis: handling MD /dev/md0 analyzing super-block disk 0: /dev/hda2, 14659312kB, raid superblock at 14659200kB /dev/hda2 appears to be already part of a raid array -- use -f to force the destruction of the old superblock mkraid: aborted. Integrace RAID/LVM se systémem To, kam připojíme vzniklá zařízení, závisí na způsobu, jakým nám bylo pomáháno s konfigurací LVM nebo RAID, stejně jako na specifikaci našeho systému. Mohou zrychlovat přístup k datům (pokud využíváme rozdělování přístupu na více fyzických zařízení) tak i zlepšit správu místa na disku a zvětšit bezpečnost dat. Proto ho více využívejme v oblastech, kde je vyžadována některá ze jmenovaných oblastí. Prvními umístěními, které se nabízejí jsou /home a /var zpravidla zde jsme předpokládali moc nebo málo místa na disku a také tam máme obecně nejdůležitější data. V případě, že naše nové zařízení pracuje rychleji než obvyklé disky (díky využití strip), můžeme se rozhodnout o přenesení na něj také adresáře /tmp existují aplikace, které jej intenzivně využívají, nebo také /usr, což může minimálně zrychlit spouštění programů na kancelářském počítači. Abychom přenesli data z jednoho zařízení na nové, můžeme jej jednoduše připojit na dočasné umístění (např. /mnt/tmp) a použít příkaz, např. cp -ax /var/* /mnt/tmp/, následně vyprázdnit ukázkový adresář /var a zaktualizovat /etc/fstab aby bylo toto zařízení připojováno v tomto místě. Jak je vidět, systém odmítl vytvoření nového pole na zařízeních, na kterých jsme již dříve vytvořili RAID-0. Jsme si však jistí, že chceme úplně zrušit předchozí pole, proto zadáme příkaz: mkraid -R /dev/md0 a dostaneme např.: DESTROYING the contents of /dev/md0 in 5 seconds, Ctrl-C if unsure! handling MD /dev/md0 analyzing super-block disk 0: /dev/hda2, 14659312kB, raid superblock at 14659200kB disk 1: /dev/hdd2, 18922680kB, raid superblock at 18922560kB Obrázek 4. Ukázková konstrukce LVM Od této chvíle je zařízení /dev/md0 připraveno k použití. Má kapacitu 14 GB, čili stejně jako menší z použitých oddílů. Vytvoříme na něm souborový systém a otestujeme, jak pracuje. Příkaz dd, použitý stejně jako v předchozích příkladech potřeboval tentokrát více než 35 sekund na provedení svého úkolu. Vidíme, že RAID-1 při zápisu pracuje výrazně pomaleji než samostatný pevný disk. www.lpmagazine.org 57

Výpis 1. Ukázkový výpis generovaný vgdisplay Daní za vyšší bezpečnost dat je zmenšení výkonnosti. Pokud na jednom z disků dojde k havárii, bude pole pracovat dále a v systémových log souborech se objeví informace o nutnosti jeho výměny. RAID-5 Vytvoření RAID-5 není o moc složitější než RAID-0 a RAID-1. Ukázkový /etc/raidtab, který jsem vytvořil na svém počítači, může vypadat takto: raiddev /dev/md0 raid-level 5 nr-raid-disks 4 persistent-superblock 1 chunk-size 4 raid-disk 0 raid-disk 1 raid-disk 2 --- Volume group --- VG Name System ID Format Metadata Areas 1 Metadata Sequence No 1 VG Access VG Status MAX LV 0 Cur LV 0 Open LV 0 Max PV 0 Cur PV 1 Act PV 1 VG Size PE Size raid-disk 3 /dev/hda2 /dev/hdd2 /dev/sda3 /dev/sdb9 IDE_disky lvm2 read/write resizable 37,27 GB 4,00 MB Total PE 9540 Alloc PE / Size 0 / 0 Free PE / Size VG UUID 9540 / 37,27 GB OEEclx-9gIP-Oqyl-R1cH-9tkK-Mlm7-rWW4xi raid superblock at 18922560kB disk 2: /dev/sda3, 39070080kB, raid superblock at 39070016kB disk 3: /dev/sdb9, 9775521kB, raid superblock at 9775424kB Takto vytvořené zařízení má kapacitu cca 27 GB. Proč? Musíme vynásobit kapacitu nejmenšího z použitých oddílů (9775521kB ~= 9GB) počtem disků a odečíst velikost jednoho oddílu potřebného na zrcadlení, proto 9*4-9=27. Rychlý test s užitím příkazu dd a zařízení /dev/zero, trval na mém systému 20 sekund, proto RAID-5 pracuje rychleji než samostatný disk, ale samozřejmě pomaleji než RAID-0. Záložní disky Pro zvětšení bezpečnosti pole RAID-1 a RAID-5 (a také zde nepopisovaných RAID-6 a RAID-10) můžeme využít záložní disky (spare disk). Tento disk není normálně používán žádná data na něj nejsou zapisována ani z něj čtena. Ve chvíli, kdy je jeden z disků poškozen, pole automaticky vytvoří jeho obsah na prvním dostupném spare disk. Díky tomu může být vypnutí systému s cílem výměny poškozeného disku naplánováno na pozdější dobu můžeme čekat i do havárie dalšího disku a nepřijdeme o žádná data. Pokud chceme do pole přidat záložní disk, stačí do /etc/raidtab dopsat např. tento řádek: spare-disk 0 /dev/sdd1 Vytváříme LVM Logical Volume Manager sám o sobě není těžký ke zkonfigurování. To co mnoho uživatelů odrazuje je používaná terminologie. Než přistoupíme k práci s ním, musíme si osvojit několik základních termínů, používaných v LVM bez toho se velmi rychle ztratíme. Zadaný příkaz mkraid -R /dev/md0 ukázal: DESTROYING the contents of /dev/md0 in 5 seconds, Ctrl-C if unsure! handling MD /dev/md0 analyzing super-block disk 0: /dev/hda2, 14659312kB, raid superblock at 14659200kB disk 1: /dev/hdd2, 18922680kB, Obrázek 5. Konfigurace našich zařízení vyžaduje určité příkazy pracující z příkazové řádky 58 leden 1/2005

softwarový raid a logical volume manager hardware LVM vytváří dodatečnou abstraktní vrstvu mezi zařízeními na ukládání dat a souborovým systémem operačního systému. Následně se mezi oddílem disku a systémem souborů objevují některé termíny: physical volume (PV) fyzický svazek, jednoduše se jedná o pevný disk nebo častěji oddíl na pevném disku, může to být však i zařízení softwarového RAIDu; volume group (VG) skupina svazků, je to jeden nebo několik fyzických svazků (pracujeme s ní vždy i když máme jen jeden PV); logical volume (LV) logický svazek (systém vidí LV jako blokové zařízení, proto když využíváme LVM, vytváříme souborový systém (např. ext3) ne na oddíle, ale na LV; podobně, v systému připojujeme LV a ne oddíl; na jedné skupině svazků vytváříme jeden nebo více LV); physical extent (PE) a logical extent (LE) fyzické rozšíření a logické rozšíření (data na fyzických a logických svazcích jsou dělena na menší jednotky např. po 4 MB; velikost PE a LE jsou stejné). Pro fungování LVM potřebujeme v jádře podporu pro Device mapper. Při konfiguraci jádra ji nalezneme v oddíle Multiple s driver support. Z dostupných voleb bychom měli zatrhnout přinejmenším Snapshot target a Mirror target i když jsou označeny jako experimentální, jsou již běžně používány (nejdříve musíme vybrat Prompt for development and/or incomplete code/drivers v části Code maturity level options). Nejlepší je LVM zkompilovat natrvalo do jádra, ale v některých distribucích jej najdeme v podobě modulu s názvem dm-mod. Pokud máme distribuční jádro, stačí pouze nahrát tento modul. Měli bychom používat jádra Úrovně RAID: Obrázek 6. LVM nám pomáhá lépe zorganizovat místo na discích Lineární (linear mode). V tomto módu jsou dva nebo více oddílů k sobě přidávány aby vytvořili jedno velké RAID zařízení. Pří zápisu na toto zařízení data nejdříve zaplní celý první oddíl / (první disk), později druhý atd. Výsledná kapacita zařízení je rovna součtu velikostí všech použitých oddílů. Nezískáme zvětšení rychlosti a havárie jednoho disku způsobí ztrátu dat celého pole. RAID-0 (stripe). Kapacita dvou nebo více zařízení je sčítána, ale data jsou zapisována současně na více zařízeních a stejně i načítána. Pokud máme tímto způsobem spojeny tři disky a nastavili jsme stripe size na 16 kb, spustí soubor o velikosti 48 kb současný zápis na všechny disky a na každý bude nahráno pouze 16 kb dat. Jak je možno domyslet, tato konfigurace zvětšuje mnohonásobně rychlost přenosu dat. Kapacita je rovna součtu disků, ale musí mít stejnou velikost. Pokud jsou různé, je na všech discích používána kapacita pouze nejmenšího z nich. Havárie jednoho disku způsobí ztrátu dat celého pole. RAID-1 (mirroring). Stejná data jsou zapisována současně na dva a více disků. Načítá se z libovolného z nich. Kapacita tohoto pole je rovna velikosti nejmenšího oddílu. Rychlost zápisu je o něco menší než zápis na samostatný disk. V případě havárie jednoho disku může systém pracovat dále, nenastává žádná ztráta dat. RAID-5. Vyžaduje tři a více oddílů. Velikost vzniklého zařízení se rovná součtu kapacit všech oddílů mínus kapacita jednoho oddílu. Pokud máme čtyři oddíly po 15 GB, získáme 45 GB místa. Pokud nejsou rozměry oddílů stejné, ve výpočtech se používá velikost nejmenšího z nich. Místo, které se odečítá je pro uschovávání kontroly parity zařízení, díky čemuž je možno v případě havárie jednoho disku rekonstruování všech dat. V případě souběžné havárie dvou disků jsou data nenávratně ztracena. Rychlost práce se blíží RAID-0, ale při zápisu je o něco menší, protože se počítá parita dat (přesně je vykonávána logická operace exclusive OR na několika bitech ze všech disků). Navíc se ještě zřídka používá: RAID-4 stejný jako RAID-5, ale informace o paritě je zapisována výlučně na jedno zařízení, díky čemuž se stává úzkým hrdlem. Mělo by být mnohem rychlejší než všechny ostatní. RAID-6 podobný jako RAID-5, s ještě jedním diskem na data o paritě, díky čemu může přečkat současnou havárii dvou disků. RAID-2, RAID-3 jsou podobné RAID-4, ale nebyly přijaty a mělo smysl zabudovávat jejich podporu do Linuxu. RAID-10 Je to RAID-0, ale jeho základním elementem nejsou oddíly fyzických disků ale pole RAID-1. Proto vyžaduje čtyři nebo více disků. série 2.6.x, protože v sérii 2.4.x, se nachází předchozí generace LVM, která umožňuje o něco méně funkcí. Mimo podpory v jádře potřebujeme také sadu programů na vytváření a správu LVM. Jsou obvykle v balíčku lvm2 a ne v balíčku lvm nebo lvm01, který je určen pro spolupráci se staršími verzemi jádra. Používání špatné verze programů na nás může nabalit neočekávané problémy, proto věnujte pozornost tomu, zda máte nainstalovaný správný a pouze tento správný balíček. Mimo to musíme doinstalovat všechny knihovny, na kterých je závislý (zvláště libdevmapper). Výběr zařízení Při návrhu diskového pole jsme museli určit, na kterých oddílech kterých disků bude vytvořeno. LVM může použít několik oddílů, stejně jako RAID, ale můžeme jej rovněž instalovat bezprostředně na disk, nerozdělený na oddíly (pokud jej chceme celý využít k tomuto účelu). Navíc můžeme zkonfigurovat LVM na zařízení / dev/md0 čili na libovolném typu softwarového RAID. Jak jsem uvedl již dříve, LVM, mimo svého mála možností, nespolupracuje s nadbytečnými disky, proto když zkonfigurujeme LVM na RAID-1, www.lpmagazine.org 59

Obrázek 7. Výstup programu Bonnie++ po konverzi do html dostaneme zařízení, které v sobě spojuje výhody jednoho i druhého zvýšenou bezpečnost dat a lepší přizpůsobivost v konfiguraci systému. V další části článku popíši, jak jednoduše vytvořit LVM na RAID-1 poli. Pokud chceme vytvořit LVM na samostatném disku či oddíle všechny kroky provádíme identicky pouze se zadáním jiných názvů zařízení. Předpokládám, že jsme již vytvořili pole RAID-1, tak jak bylo popisováno dříve. Další kroky První úkonem je označení všech zařízení, která se mají stát částí nějaké skupiny svazků (VG). V našem případě napíšeme příkaz: pvcreate /dev/md0. Pokud chcete nainstalovat LVM na samostatný oddíl, např. /dev/hdb3, napište pvcreate /dev/hdb3, pokud určíte pro LVM celý disk hdb pvcreate /dev/hdb. V tomto posledním případě jsme nuceni nejdříve vymazat tabulku oddílů, např. příkazem dd if= /dev/zero of=/dev/hdb bs=1k count=1. Po zadání příkazu pvcreate bychom měli vidět např. Physical volume "/dev/md0" successfully created. Tento příkaz opakujeme pro všechna zařízení, která mají být použita v nějaké VG. Způsobí zapsání specifických dat do zaváděcí oblasti disku identifikující dané zařízení, díky čemu pokud např. zaměníme disky sda a sdb, bude LVM pracovat nadále bez překážek (netýká se to mého systému, ve kterém je LVM zbudováno na RAID-1). Druhým úkonem je vytvoření skupiny svazků. Každá skupina má své jméno, které si můžeme zvolit dle vlastního uvážení. V mém případě jsem vytvořil VG příkazem vgcreate IDE_disky /dev/md0, které odpovědělo výpisem Volume group "IDE_disky" successfully created. Mé skupině jsem dal jméno IDE_disky. Pokud se má náš svazek roztáhnout na více zařízení, musíme je v tomto příkaze vyjmenovat všechna např. vgcreate IDE_disky /dev/hda3 /dev/hdc4 /dev/sda5. V jednom systému můžeme vytvořit více VG (maximálně 99), ale je samozřejmé, že žádné fyzické zařízení nemůže být ve dvou skupinách zároveň. Při příležitosti vytváření VG můžeme nastavit rozměr PE dle HOWTO je výchozí hodnota 32 MB, ale na mém počítači použil vgcreate hodnotu 4 MB. Samotnou hodnotu můžeme zadat pomocí parametru -s, např. vgcreate -s 32 /dev/md0. Zadaná hodnota (výchozí v megabajtech) musí být mocninou čísla dvě. Následný krok je aktivace svazku. Provedeme ji příkazem vgchange --available y IDE_disky. Měl by odpovědět: 0 logical volume(s) in volume group "IDE_disky" now active. Je důležité, že od této chvíle se budou skripty odpovědné za start a ukončování systému, které jsme nainstalovali společně s balíčkem lvm2, starat o náš svazek, čili aktivovat jej při startu a deaktivovat při ukončování systému. Po aktivaci VG o něm můžeme získat zajímavé informace s využitím příkazu vgdisplay IDE_disky. Výsledek jeho činnosti jsem umístil do Výpisu 1. Vidíme, že naše velikost PE je 4 MB (PE Size) a k dispozici máme 9540 PE. Chtěl bych upozornit na to, že v tomto příkladu LVM vidí jen jedno fyzické zařízení (je to /dev/ md0), i když fakticky máme dva disky. Blížíme se ke konci. Teď vytvoříme logické svazky. Jak jsem již zmiňoval dříve v jednom VG můžeme vytvořit mnoho logických svazků (v systému jich může být maximálně 256). Logické svazky (LV), podobně jako skupiny svazků (VG), mohou mít libovolná jména, která si vymyslíme. Rozeberme si ukázkový příkaz, vytvářející LV: lvcreate -l3000 -ndomovské_adresáře IDE_disky. Tento příkaz vytvořil LV se jménem domovské_adresáře a velikosti 3000 PE, čili na mém systému 12000 MB. Nový logický svazek byl vytvořen na základě skupiny svazků pojmenované IDE_disky. Jako výchozí nastavení budou data zapisovaná na tomto svazku postupně zabírat dostupné místo na příslušných fyzických zařízeních. Přístup k tomuto svazku máme díky souboru zařízení /dev/ide_disky/domovské_adresáře. Pokud vytváříme LVM na základě dvou nebo více nezávislých zařízeních, můžeme použít parametr -i, abychom využili rozdělování diskových operací (stripe) na několik zařízení. Příkaz lvcreate -i2 -l3000 -njméno_lv jméno_vg způsobí, že data budou rozdělována na dvě zařízení. Pokud máme více zařízení, s úspěchem můžeme tento parametr zvětšit. Obecně, pokud využíváme LVM, nezajímá nás na které fyzické zařízení se data dostanou z konkrétního logického svazku. Máme přece několik zařízení, spojených do jedné VG. Proto můžeme k příkazu lvcreate přidat ještě jeden parametr, který nastaví, které fyzické zařízení systém použije, pokud začne plnit náš svazek daty. Například lvcreate -l3000 -njméno_lv jméno_vg /dev/sdh1 nastaví první používané zařízení jako /dev/sdh1. Samozřejmě, že pokud na něm dojde místo, LVM začne používat i jiná zařízení. Obrázek 8. Zařízení RAID a LVM můžeme vytvářet již v průběhu instalace distribuce 60 leden 1/2005

softwarový raid a logical volume manager hardware Pokud chcete odstranit logický svazek, zadejte příkaz lvremove /dev/ide_disky/ domovské_adresáře. Nejdříve musíme odpojit systém souborů, pokud jsme již nějaké stihli vytvořit a připojit, s využitím /dev/ide_disky/domovské_adresáře. Pro změnu názvu LV můžeme použit příkaz lvrename. Užitečný je také program lvscan, který nám zobrazí informace o všech pracujících logických svazcích. Ve svém systému jsem si vytvořil ještě jeden svazek: lvcreate -l3000 -nsystémové_logy IDE_disky a následně jsem zapsal příkaz vgdisplay, který mi zobrazil mj. i počet volných PE: Free PE / Size 3540 / 13,83 GB Abychom úplně zaplnili náš VG, vytvořením logického svazku, musíme zadat parametr -l3540, protože právě tolik alokačních bloků nám zůstalo. Je však dobré ponechat si ještě trochu místa na snapshot'y, o kterých napíši ještě v další části, proto zadám příkaz lvcreate -l3490 - ndatabáze IDE_disky. V této chvíli je vše připraveno na formátování všech vytvořených zařízení. V mém systému by ukázkové příkazy vypadaly takto: # mkfs.ext3 /dev/ide_disky/databáze # mkfs.ext3 /dev/ide_disky/domovské_s adresáře # mkfs.ext3 /dev/ide_disky/systémové_logy LVM v akci V této chvíli se jistě mnoho čtenářů ptá, proč bylo vytvořeno LVM? Zatím nás dost dlouhý popis kroků dovedl do situace, kdy máme obvyklý systém. Je pravdou, že je zabezpečen před havárií jednoho pevného disku, ale to je zásluha výlučně RAID-1 a ne LVM. Navíc se přístup k disku zpomalil (jednoduchý test s příkazem dd na LVM u mne pracuje o tři sekundy déle než na samostatném RAID-1). A samozřejmě, že LVM nebyl vytvořen proto, abychom mohli využít fantazii v pojmenovávání zařízení. Podívejme se na to, jak s jeho pomocí spravovat místo na disku a pohodlně provádět bezpečnostní zálohu dat. Přidáváme disk Předpokládejme, že nám chybí místo na zařízení /dev/ide_disky/databáze. Do systému jsme přidali nový disk a můžeme z něj použít jeden oddíl /dev/sda3. Samo- Jak testovat disky? Určitě mnoho uživatelů GNU/Linuxu zná nástroj hdparm. S jeho pomocí můžeme mj. zjistit rychlost lineárního přenosu dat z disku. Je to velmi jednoduchý test umožňující porovnání disků ve skutečnosti nám říká nemnoho o tom, jak výkonné budou naše disky a vůbec se nehodí na testování RAID nebo LVM. Neexistuje jeden univerzální měřič rychlosti disků, protože každý počítačový systém je jiný některé stále načítají soubory o velikosti několika gigabajtů a jiné desítky tisíc souborů o velikosti několika kilobajtů. V některých je stejně důležitá rychlost načítání jako rychlost zápisu, v jiných nemá rychlost význam. Některé programy načítají data lineárně a jiné stále prohledávají disk. Z toho důvodu musíme při měření výkonu disků brát v úvahu konkrétní systém. Nejpopulárnějším programem, který nám dá mnoho informací o práci disku je Bonnie++ (http://www.coker.com.au/ bonnie++/). Pokud jej nenajdete ve své distribuci, můžete si stáhnout zdrojové kódy z domovské stánky a můžete je zkompilovat a nainstalovat tradičními příkazy:./configure; make; make install. Tento program testuje rychlost práce nejenom samotného pevného disku ale i systému souborů. Na testovaném disku musíme vytvořit nějaký oddíl, vytvořit na něm souborový systém a připojit do systému. Následně přejděte do adresáře, kam je připojen testovaný disk (např. cd /mnt/test) a spusťte program: zřejmě, že to není nejlepší nápad, protože naše předchozí zařízení se nachází na RAID-1, a proto je zabezpečeno před havárií jednoho z disků. Pokud do celé skupiny svazků přidáme jedno fyzické zařízení bez této ochrany, v případě jeho havárie přijdeme o všechna data. V reálném světě bychom měli přidat nejméně jeden další disk a vytvořit na nich nejdříve RAID-1. Pro potřeby ukázky v tomto článku si však ukážeme jednoduchý příklad s jedním oddílem. Začneme inicializací oddílu: # pvcreate /dev/sda3 Physical volume "/dev/sda3" S successfully created Následně rozšíříme skupinu svazků o nové zařízení: # vgextend IDE_disky /dev/sda3 Volume group "IDE_disky" S successfully extended bonnie++ -s 1000k -n 128 -b. Pomocí parametru -s 1000k jsme nastavili velikost souboru, který Bonnie++ vytvoří, aby mohl zkontrolovat rychlosti lineárního zápisu a čtení. Volba -n 128 nastavuje, kolik tisíc malých souborů (s nulovou velikostí) bude vytvořeno, aby se dala změřit doba jejich vytváření, načítání a mazání. Poslední parametr -b vypíná cachování zápisů a synchronizuje disk po každém z nich (fsync()), čímž se chová jako populární SQL nebo SMTP servery, které to dělají podobně. Po několika nebo více minutách testů vypíše program několik řádků na začátku budou dvě málo čitelné tabulky s výsledky a poslední řádek obsahuje všechny výsledky oddělené čárkami. Abychom získali pěknou a čitelnou tabulku, můžeme použít program bon_ csv2html. Pomocí standardního výstupu načte poslední řádek výpisu z Bonnie++ a tiskne html soubor na standardní výstup. Můžeme ho použít takto: echo <poslední řádek bonie++> bon_ csv2html > /tmp/dysk1.html. Samozřejmě, že nejjednodušší pro nás bude dlouhý řádek s výsledky z programu Bonnie++ označit a vložit do tohoto příkazu pomocí myši. Hodnoty, které Bonnie++ vypíše, budou závislé nejenom na pevném disku, ale rovněž na použitém systému souborů (ext2/ext3), rychlostí procesoru či zatížením systému atd. S využitím příkazu vgdisplay zkontrolujeme výsledek naší činnosti. Ukázka výpisu na mém počítači vypadá takto: VG Size PE Size 74,52 GB 4,00 MB Total PE 19078 Alloc PE / Size Free PE / Size 9540 / 37,27 GB 9538 / 37,26 GB V této chvíli můžeme vytvořit úplně nový svazek na 9538 volných PE, ale o to nám zase až tak nejde, protože nám momentálně chybí místo na svazku připojeném v /báze. Po spuštění příkazu df -h aktuálně máme: /dev/mapper/ide_disky-databáze 14G 13G 397M 98% /báze Abychom všech 9538 volných PE přidali tomuto svazku, zadáme příkaz: # lvextend -l +9538 /dev/ide_disky/s databáze www.lpmagazine.org 61

Tímto způsobem jsme zvětšili logický svazek, o čemž se můžeme přesvědčit příkazem lvscan. Nyní musíme zvětšit souborový systém, aby zabral místo na celém LV. Existují speciální záplaty na jádro, které umožňují provedení této operace bez odpojení souborového systému, ale my si na chvíli proveďme umount /báze/ a zadejme příkaz resize2fs -p /dev/ide_disky/databáze. Program nás může požádat o kontrolu souborového systému před jeho změnou velikosti, proto v tomto případě napište: e2fsck -f /dev/ide_disky/databáze a znovu zopakujte příkaz resize2fs. Nyní už zbývá jen připojit znovu LV a podívat se, co zobrazí df -h. Já jsem dostal: /dev/mapper/ide_disky-databáze 51G 13G 36G 27% /báze Operace trvala velmi krátce a skončila úspěchem. Bez LVM by byla nutná úprava tabulky oddílů na přinejmenším jednom disku a následně krkolomné přenášení dat. Všechno tohle by způsobilo o mnoho delší přestávku ve fungování systému. Zvětšování souborového systému je možné nejenom na ext2/ext3. Pokud používáme reiserfs, můžeme analogicky využít příkaz resize_reiserfs -f. V případě xfs máme program xfs_growfs, ale jistý rozdíl je v tom že systém souborů musíme nechat připojený a jako parametr tohoto programu zadat přípojný bod (např. xfs_growfs /báze). Jiné manipulace s disky V případě, že chceme ze systému odstranit jeden disk (např. hdb) a máme na ostatních discích tolik místa, že se na ně vejdou všechna data, může použít příkaz: pvmove /dev/hdb. Nyní byla všechna data z hdb přenesena na zbylé disky v rámci stejné skupiny svazků (VG). Následné vgreduce jméno_vg /dev/hdb způsobí, že disk již není členem VG se jménem jméno_vg. Když jsme do systému přidali nový disk (např. sdf ), na který chceme přenést data ze starého (např. hdb), zadáme příkazy: # pvcreate /dev/sdf # vgextend dev /dev/sdf # pvmove /dev/hdb /dev/sdf # vgreduce dev /dev/hdb Před nějakou chvílí jsme zvětšovali logický svazek. Samozřejmě je možné i stejně jednoduché zmenšování. Problém se objevuje při zmenšování souborových systémů, protože pokud vím tak pouze ext2/ext3 a reiserfs tuto operaci umožňují. Ukázkový příklad by mohl vypadat takto: # umount /home # resize2fs /dev/ide_disky/s domovské_adresáře 524288 # lvreduce -L-1G /dev/ide_disky/s # mount /home domovské_adresáře V tomto případě jsme jako parametr programu resize2fs museli zadat novou velikost souborového systému. LVM obsahuje také nástroje na přesouvání skupiny svazků (VG) na jiné počítače, když nemůžeme provést obvyklé přeložení disků. Musíme, po odpojení souborového systému a deaktivaci VG (vgchange --activate n jméno_vg), spustit příkaz vgexport jméno_vg a následně po přeložení disku do nového počítače vgimport jméno_vg. Snapshot Provádění bezpečnostní zálohy trvá dosti dlouho a ne každý si může dovolit úplné zastavení systému na tuto dobu. tehdy jsou největším problémem soubory, které byly v době provádění zálohy změněny. LVM nám zpřístupňuje speciální mechanismus, který nám umožní tento problém obejít. Můžeme vytvořit snapshot aktuálního stavu některého z našich logických svazků. Snapshot je pro správce systému dalším logickým svazkem, obsahujícím kopie některého LV. Tato kopie se nemění i když se na originále provádí operace zápisu. Samozřejmě, že při vytváření snapshotu nejsou data v něm obsažená fyzicky kopírována na nový logický svazek. Na daném VG potřebujeme trochu místa, aby bylo kam zapsat informace o souborech, které se změnily od doby vytvoření stavu logického svazku. Pokud máme adresář /home ve kterém se nachází 20 GB dat, pak víme, že vytvoření bezpečnostní zálohy bude trvat 10 minut. Předpokládejme, že uživatelé v průběhu těchto 10 minut na oddíle s /home vytvoří nebo změní ne více než 200 MB dat. Tolik místa proto musíme mít na dané skupině svazků. Snapshot vytvoříme příkazem: # lvcreate -L200M -s -n nase_zalohas /dev/ide_disky/domovské_adresáře Pokud používáme systém souborů xfs musí být příkaz o něco delší: # xfs_freeze -f /home; lvcreate -L200MS -s -n nase_zaloha /dev/ide_disky/s domovské_adresáře V této chvíli můžeme připojit (jen ke čtení) logický svazek se jménem nase_ zaloha, který obsahuje kopii svazku domovské_adresáře : # mount /dev/ide_disky/nase_zalohas Na Internetu: /mnt/backup/ Po skončení provádění záložní kopie zadáme příkaz : lvremove -f /dev/ide_ disky/nase_zaloha. Musíme však dávat pozor na to, aby do této chvíle veškeré změny na svazku nepřekročily velikost snapshotu v tomto příkladě 200 MB. Po naplnění se stává neužitečným a stejně je zapotřebí se chovat k datům z něj zkopírovaným. Shrnutí Využití RAID a LVM může velmi ulehčit práci správci a zvětšit bezpečnost a výkonnost systému. Toto řešení někdy způsobí, že některé obvykle jednoduché činnosti (např. přenášení disku do jiného počítače) se stávají velmi komplikovanými a ve chvíli, kdy již dojde k havárii některého disku je získání dat z něj těžší. Je nutné se vybavit patřičnými nástroji pro obnovu systému, které si budou umět poradit se souborovými systémy na těchto zařízeních, např. minidistribuce (R)ecovery (I)s (P)ossible Linux. Jinými slovy, pokud vyřešíte jisté problémy, často se objeví celá řada nových. LVM HOWTO: http://www.tldp.org/howto/ LVM-HOWTO/ Softwarový RAID HOWTO: http://www.tldp.org/howto/ Software-RAID-HOWTO.html Záchranná distribuce, mj. pro RAID a LVM: http://www.tux.org/pub/people/ kent-robotti/looplinux/rip/ Domovská stránka distribuce (R)ecovery (I)s (P)ossible Linux: http://www.tux.org/pub/people/ kent-robotti/looplinux/rip/ 62 leden 1/2005