Linux E X P R E S

Facebook

Kde v Linuxu najít disky

disk.png

Používáte-li grafické uživatelské rozhraní, většinou se nemusíte starat o to, kde v souborovém systému najít zařízení pro disky a jejich oddíly. Někdy je ale důležité vědět, kde se příslušné soubory nacházejí a jak se jmenují.


K čemu jsou potřeba zařízení disků?

Při práci v grafickém rozhraní se uživatel většinou nemusí o disky vůbec starat. Ty, které jsou v počítači při instalaci systému, se připojují buď podle automatické volby instalátoru nebo podle nastavení při instalaci. Pro přípravu nově připojovaných disků lze používat různé klikací nástroje, pro externí disky obvykle vyskakuje dialog s dotazem.

Něco jiného je ale práce v příkazové řádce, kde už jsou jisté znalosti o discích potřeba. Ovšem i při práci v grafickém rozhraní můžete chtít ovlivnit, jak se s disky pracuje, protože může mít své výhody si některé věci vyřešit po svém.

Všechno je soubor

V unixových operačních systémech – kam patří i GNU/Linux – platí pravidlo, že (téměř) všechno je soubor. Jádro ve své blokové vrstvě vytvoří příslušné objekty a pro ně pak program v uživatelském prostoru (typicky udevd) vytvoří speciální soubory.

S těmito soubory se pak pracuje při připojování (mount) souborových systémů do stromové hiearchie. Aby mohl uživatel se souborem zařízení přímo pracovat (číst, zapisovat), musí k němu mít příslušná oprávnění. Pro práci se soubory na zařízení pochopitelně práva přímo k zařízení potřeba nejsou (přístup se řídí podle práv k jednotlivým souborům), u připojování záleží na konfiguraci v souboru /etc/fstab (pokud je pro daný disk/oddíl vytvořena).

Soubory v /dev

Základní soubory zařízení se tradičně vytvářejí v adresáři /dev. V dobách vlády paralelní sběrnice ATA (PATA) byly disky značeny jako hd?, například hda, hdb, hdc atd. Systém v praxi míval typicky disk master na prvním kanále řadiče označen celou cestou jako /dev/hda atd. Disky na sběrnici SCSI byly označeny písmenem „s“, první disk byl tedy na cestě /dev/sda apod.

Dnes, kdy převažují sériové sběrnice ATA (SATA), se používá jednotný systém, který vychází z označování pro SCSI. Na všech sběrnicích se disky označují stejně. Máme tedy typicky soubory jako /dev/sda, /dev/sdb a další, bez ohledu na typ sběrnice, přes kterou je disk připojen.

V jakém pořadí jsou disky uvedeny? V rámci téže sběrnice se vychází z číslování disků na sběrnici, pořadí přes všechny sběrnice však není jednotné a závisí na tom, jak je nakonfigurován BIOS. Z toho vyplývá, že když si tuto konfiguraci změníte, pod stejným názvem souboru zařízení bude po startu jiný disk.



Oddíly disků

Disky lze, jak známo, dělit na oddíly (partitions). Každý oddíl získává svůj vlastní soubor zařízení. Pracuje-li se se souborem celého disku, každá operace pracuje nad diskem jako nad jedním souvislým prostorem, bez členění na oddíly.

Oddíly disků jsou číslovány v rámci daného disku. Na disku lze vytvořit až čtyři tzv. primární oddíly a jeden rozšířený, v němž se pak tvoří logické oddíly. Projeví se to tak, že primární oddíly mají čísla 1–4, rozšířený je očíslován jako 5 a logické oddíly pokračují od čísla 6. Pokud vytvoříte třeba jen jeden primární oddíl a pak už oddíl rozšířený, čísla 2–4 se přeskočí.

V adresáři /dev se toto všechno projeví tak, že máte-li například disk /dev/sda a na něm dva primární oddíly a dva logické oddíly v rozšířeném oddílu, uvidíte celkem pět zařízení: /dev/sda1, /dev/sda2, /dev/sda5, /dev/sda6/dev/sda7.

Vylepšený přístup k diskům

Na jednu nevýhodu popsaného způsobu přístupu už jsme narazili: změna v nastavení počítače může změnit název souboru disku (a samozřejmě i všech oddílů na něm). Podobné dopady má také přepojení na jiný kanál řadiče nebo přepnutí PATA disku z režimu master na slave a naopak. Existují i další nepříjemné situace, které mohou rozbít fungující systém a způsobit dezorientaci správce.

Proto vzniklo řešení, které umožňuje přístup k souborům disků a oddílů příjemnějšími způsoby. V podadresářích /dev/disk se vytvářejí symbolické odkazy na výše uvedené soubory. Přes ně lze k daným souborům přistupovat aktuálně čtyřmi různými metodami.

Podle identifikátoru disku

Jednou z možností je využít identifikátor disku, založený na výrobci, typu a sériovém čísle disku. Název souboru pak může vypadat takto:

scsi-SATA_SAMSUNG_HD103SJS246J90ZC40258

Pokud budou na disku vytvořeny například dva primární oddíly, jejich soubory budou podobné (jen se přidá rozlišovač na konec):

scsi-SATA_SAMSUNG_HD103SJS246J90ZC40254-part1
scsi-SATA_SAMSUNG_HD103SJS246J90ZC40254-part2

Tyto soubory najdeme v adresáři /dev/disk/by-id a zajišťují, že ať se daný disk připojí kamkoli (na kterýkoli kanál kteréhokoli řadiče daného typu), bude se jmenovat vždycky stejně. Pozor ale na to, že pokud se disk porouchá a je při reklamaci nahrazen jiným, ten už bude mít samozřejmě jiné sériové číslo a tedy i jiný identifikátor.

Podle štítku

Velmi příjemnou možnost specifikace disku skýtají štítky. Disku nebo oddílu je potřeba štítek nastavit (buď při vytváření souborového systému nebo samostatným příkazem; používá se na to utilita pro daný souborový systém, pro ext2/3/4 je to nástroj tune2fs), jinak se disk v seznamu souborů neobjeví. Název disku pak přímo odpovídá danému štítku.

Soubory najdeme v adresáři /dev/disk/by-label. Výhodou je, že lze disk nejen přesouvat a v počítači, ale i nahradit jiným (prostě se po výměně přenese obraz na nový disk) a najdeme ho stále pod stejným názvem. Ale jsou tu i nevýhody – bez souborového systému disk nemá štítek (ten se navíc musí nastavovat různými nástroji podle typu systému), navíc nastane problém, pokud je v systému více disků označené stejným štítkem.

Podle hardwarové cesty

Disk či oddíl lze identifikovat i podle cesty po hardwaru, kterou se lze k disku dostat (přes které sběrnice a pozice na nich). Soubory najdeme v /dev/disk/by-path a mají následující podobu:

pci-0000:00:1f.2-scsi-0:0:0:0

Oddíly se značí jako u identifikátorů. Disk je identifikován tím, kam je fyzicky připojen. Lze ho tedy bez problémů vyměnit, nelze ho ale přesunout na jiný kanál, ani nelze přepojit jeho řadič (pokud není připojen napevno).

Podle UUID

Při vytváření souborového systému na disku/oddílu je mu přidělen univerzálně unikátní identifikátor (neměl by se nikdy vyskytnout opakovaně). Ten lze využít k identifikaci disku – soubory se objevují v adresáři /dev/disk/by-uuid a mají zhruba tuto podobu (závisí na typu souborového systému):

b897f8fc-b778-4ce7-8a17-4d583a557012

Protože identifikují přímo jednotlivé souborové systémy, podobně jako štítky lze UUID použít jen u disků/oddílů, kde jsou tyto systémy vytvořeny. Na rozdíl od identifikátorů a HW cest zde samozřejmě nefiguruje rozlišovač oddílu. Podobně jako u štítků lze disky libovolně měnit a přepojovat, nehrozí zde ale žádná kolize názvů; UUID však na rozdíl od štítků nejsou lidsky srozumitelné.

Co používat?

Neexistuje univerzální doporučení, jaký způsob při hledání a identifikaci souborů disků a oddílů používat. Pro úložiště s vytvořeným souborovým systémem se samozřejmě nejvíc hodí štítky a UUID. S prázdným úložištěm se obvykle pracuje jen krátce (do vytvoření souborového systému) a tam si lze vystačit se soubory přímo v /dev, protože není nutná stálost označení.

Diskuze (8) Nahoru