Na disky větší než 2 TB s GPT

Adam Štrauch 20. 9. 2011

I když se mluví o bájné fyzikální hranici pevných disků, jejich kapacita každý rok stoupne v průměru o několik desítek procent. Dnes už jsou na trhu 3TB disky, a tak je potřeba řešit jeden z mnoha limitů, který se kolem staré architektury PC objevuje. Tímto limitem je maximální velikost disku mapovatelného přes MBR.

V článku se používají jednotky v násobku tisíce (GB, TB apod.), pokud není uvedeno jinak.

Když se v vývojáři z IBM domlouvali na podobě MBR, asi je ani nenapadlo, že by disky mohly někdy dosahovat velikostí nad 2 TB a už vůbec ne, že by je někdo chtěl rozdělovat na víc než 4 oddíly. Omezení se čtyřmi oddíly se podařilo docela pěkně obejít, zato limit na 2,199 TB zůstal a zůstane až do konce MBR.

Ale abychom nepředbíhali. Od určité doby se pro mapování disků začalo používat Logical Block Addressing (LBA), které zjednodušilo adresaci, která se do té doby řešila metodou Cylindr-Hlava-Sektor (CHS). LBA má daleko k fyzické poloze dat v pevném disku, a tak řadič musí LBA převádět na fyzickou polohu a zase zpět. Už u CHS se prováděly podobné machinace, takže stejně mohly ovladače v operačním systému maximálně hádat, které oblasti dat leží u sebe a podle toho optimalizovat jejich čtení a zápis. LBA toto zjednodušilo a nechalo optimalizace na samotném disku. Změna měla také za úkol zvednout limit 7,8 GB, který byl na CHS navěšený.

A zrodila se úprava MBR, která přežila z dob slavných procesorů 386, až do současnosti, kde má stále své místo. Když se podíváme na nákres MBR hlavičky, zjistíme, že je vložena na první sektor, tedy na prvních 512 B disku. To není moc místa, zvlášť když si uvědomíme, že se na prvních 440 B krčí zavaděč operačního systému. Když odečteme ještě různé signatury, tak pro tabulku oblastí zbývá 64 B, což je méně, než je polovina SMSky. Z pohledu dnešních disků jde o směšný prostor, a ten si také vybírá svou daň. Těchto 64 B je rozděleno na 4 × 16 B a pro samotnou adresu jsou k dispozici 4 B, tedy 32 bitů. Jednoduchým výpočtem zjistíme, že je možné mapovat 4294967296 sektorů. Protože se v nultém sektoru skrývá samotné MBR, v praxi je možné mapovat o jeden sektor méně. V bytech to pak dělá 2199023255040, což je 2.199 TB. V TiB jednotkách to je 2,048 – 512 B. Limit se tedy dotýká už 2,5 TB disků, které jsou dnes na trhu za rozumnou cenu.

Ve skutečnosti se limit týká adresy počátku oblasti, takže pokud máte 4 TB disk, můžete na něm vytvořit čtyři oddíly začínající v první polovině disku a poslední z nich se může táhnout přes druhou polovinu. Velikost oddílu je omezena stejně, tedy na něco přes 2 TB. U větších disků ale MBR už opravdu narazí.

Proto nastal čas odpoutat se od MBR a zkusit něco modernějšího, co řeší problémy, třeba GUID Partition Table (GPT). Jde o čisté řešení, které vzešlo ze standardu (U)EFI vyvinutého firmou Intel. Na rozdíl od MBR se GPT roztahuje rovnou na 34 sektorech a navíc je na disku ve dvou kopiích. Odstraňuje tedy jak problémy s počtem oddílů, tak jejich maximální velikosti. O kompatibilitu se staršími počítači se stará tzv. Protective-MBR, která leží v nultém sektoru, stejně jako normální MBR a obsahuje informaci o jednom oddílu typu GPT. Tím se zajistí, že se na nekompatibilních systémech bude disk tvářit zaplněný neznámými daty. GPT samotné se rozpíná na dalších 33 sektorech. Pro adresy jednotlivých oddílů je vyhrazeno 32 sektorů a každý oddíl má k dispozici 128 B, v rámci kterých je pro adresu uvolněno 8 B. To umožňuje adresovat 2 ^ 64 sektorů, což je něco přes 9.4 ZB. Celkem může GPT tabulka rozdělovat disk až na 128 oddílů.

Nasazení a problémy

Kolem GPT panuje spousta otazníků a i když jsou na trhu disky, na které se hodí, moc informací k dispozici není. Podporu GPT najdeme dnes téměř na všech operačních systémech včetně Linuxu. U Windows můžeme zapomenout na stará XP, ale Vista a 7 už by měly podporu mít. Trochu horší to je se zavaděči. GRUB verze 1 podporu oficiálně neměl, ale patche byly k dispozici, zato druhá verze už podporu má a funguje jak s EFI deskami, tak s klasickým BIOSem. Vhledem k tomu, že je GRUB tlačen snad všemi hlavními linuxovými distribucemi, měla by tato informace stačit.

Z instalátorů linuxových distribucí jsem zkoušel jen alternativní instalaci Ubuntu, která si GPT hravě poradila bez problému. Tabulku oblasti doporučuji vytvořit ještě před instalací samotného operačního systému, třeba pomocí Parted Magic. Budete mít jistotu, že se opravdu použije GPT, a pokud podobně jako já používáte textový instalátor Debianu, bude vytváření mnohem pohodlnější. Při vytváření oblastí je nutné dát si pozor, protože GRUB potřebuje jednu vlastní oblast, která sice může být velmi malá (menší než 1 MB), ale bez ní nenabootuje. Této oblasti dejte flag bios_grub. Při instalaci si tam GRUB přesune další kód, který se už nevejde do MBR.

gparted a GPT tabulka oblastí

Po vytvoření všech oblastí a nainstalování operačního systému byste měli normálně nabootovat, a tím pro vás GPT končí. Pokud tomu tak není, znamená to, že BIOS vaší základní desky je chytřejší, než se na první pohled zdálo, a zmátla ho Protective-MBR. V takovém případě máte rovnou čtyři možnosti:

  • Dejte GPT oddílu v Protective-MBR boot flag
  • Použijte utilitku gptsync
  • Pokud to je možné, vraťte se k MBR
  • Použijte pro bootování jiný disk

Boot flag je v Linuxu vcelku zbytečný, protože jeho bootloadery fungují z MBR a buď je oblast s jádrem uložena v MBR také nebo jsou schopny si ji dostat z konfiguračních souborů uložených někde na disku. Je ale důležitý pro Windows, které si s ním minimálně v minulosti označovaly oddíl se systémem. Proto mohou být některé staré BIOSy zmatené, pokud v MBR boot flag není.

Pokud to nepomůže, zkuste utilitku gptsync. Sice jsem ji nenašel téměř na žádném záchranném CD, ale jde například doinstalovat do běžícího Live CD Ubuntu. Utilitka gptsync vezme oblasti z GPT a první tři zkusí narovnat za oblast typu GPT, která se samozřejmě zmenší. Vzhledem k tomu, že ještě GRUB potřebuje malou oblast pro sebe, tak gptsync zvládne synchronizovat pouze dvě linuxové oblasti. Samozřejmě platí limity, které MBR má, takže adresa poslední oblasti končí na maximu 2,199 TB. Takovémuto řešení se říká hybrid MBR a není součástí EFI standardu. Proto je možné, že některé nástroje nebo i operační systémy nebudou s takovým diskem pracovat správně.

Převod MBR na GPT a zase zpět není vždy možný, ale pokud máte celkem 4 oddíly a méně na disku menším než 2,199 TB, neměl by to být problém. K převodu poslouží utilita gdisk, kterou velmi dobře zdokumentoval Rod Smith. Na odkazovaném webu najdete mnohem víc než gdisk. Rod se o GPT hodně rozepisuje, a tak se jeho web stal asi nejlepším zdrojem informací.

Poslední možnost, když selhaly všechny ostatní, je použít jiný disk, na který umístíte MBR a oddíl s adresářem /boot a budete bootovat z něj. Můžete použít USB flash disk, ale i normální velký disk.

Závěr

GPT se nemusíte bát, nekouše a na své desce ho s největší pravděpodobností rozjedete. U velkých disků nemá smysl váhat, zvlášť pokud nepoužíváte LVM a chcete si v oddílech udržet trochu kulturu. Určitě já i ostatní uživatelé ocení, pokud se v diskusi o své zkušenosti s GPT podělíte.

Ohodnoťte jako ve škole:

Průměrná známka 1,56

Našli jste v článku chybu?
Zasílat nově přidané názory e-mailem
120na80.cz: Odřenina. Jakou použít dezinfekci?

Odřenina. Jakou použít dezinfekci?

Vitalia.cz: Tetanus v USA – i po odřeninách

Tetanus v USA – i po odřeninách

Vitalia.cz: Taky ji kupujete? Je šizená

Taky ji kupujete? Je šizená

120na80.cz: Končí pylová sezona břízy a začíná sezona trav

Končí pylová sezona břízy a začíná sezona trav

Vitalia.cz: Kam zmizela půlka ryby?

Kam zmizela půlka ryby?

Podnikatel.cz: Vyzkoušejte k propagaci výrobku Microsites

Vyzkoušejte k propagaci výrobku Microsites

Podnikatel.cz: Šizený guláš na pultě. Jako Lidl to nedělejte

Šizený guláš na pultě. Jako Lidl to nedělejte

120na80.cz: Poznáte, který z léků je pravý?

Poznáte, který z léků je pravý?

Podnikatel.cz: Různé podoby lahve Coca–Coly. Úchvatné

Různé podoby lahve Coca–Coly. Úchvatné

Lupa.cz: Válka e-shopů. Alza končí s Heurekou

Válka e-shopů. Alza končí s Heurekou

Lupa.cz: Je IoT bezpečnostní noční můra?

Je IoT bezpečnostní noční můra?

Podnikatel.cz: Konečně vývar. Skoro jako od Steva Jobse

Konečně vývar. Skoro jako od Steva Jobse

120na80.cz: 10 dezinfekcí: Vede „starý dobrý“ peroxid

10 dezinfekcí: Vede „starý dobrý“ peroxid

Vitalia.cz: Grilujte v parku i na loďce

Grilujte v parku i na loďce

Vitalia.cz: Vydával se za český, prozradila ho DNA

Vydával se za český, prozradila ho DNA

DigiZone.cz: Rádio Retro spouští stream o Karlu IV.

Rádio Retro spouští stream o Karlu IV.

DigiZone.cz: Konec geoblokace? Ani náhodou…

Konec geoblokace? Ani náhodou…

DigiZone.cz: Šlágr TV: pokuta 100 tisíc za on-line

Šlágr TV: pokuta 100 tisíc za on-line

Vitalia.cz: Falšovaný salám v Kauflandu

Falšovaný salám v Kauflandu

DigiZone.cz: Změní se veřejnoprávní status ČT?

Změní se veřejnoprávní status ČT?