Jak zkrotit /etc/fstab?

27. 8. 2011 9:11 (aktualizováno) Marek Zukal

Základy toho, jak funguje fstab tady rozebírat nebudu, na to se může každý podívat sám třeba sem: http://www.abclinuxu.cz/clan­ky/system/na-co-se-casto-ptame-etc-fstab. Chci se zaměřit na to, co všechno se dá použít jako identifikace disku a jak to zjistit.

Prakticky všude se dozvíme, že do prvního sloupce souboru /etc/fstab patří uzel zařízení (device node), tedy něco jako /dev/sda1. To je sice pravda, ale pro uživatele, kteří často mění organizaci disků je to dost nepraktické. Stačí totiž přidat fyzický disk nebo změnit rozdělení těch logických a problém v podobě posunutého označení disků je na světě. Nicméně dá se tomu jednoduše předejít a většina distribucí již při instalaci těchto „triků“ využívá.

Prvním způsobem identifikace je jmenovka disku. Například pro připojení kořenového oddílu se jmenovkou prostě „/“ lze použít konstrukci LABEL=/. Obecně by to není problém pro žádný souborový systém. Možná jen pozor na diakritiku.

Stejně jako jmenovku lze použít také UUID disku. Stačí napsat jen např. UUID=5DE49ADCD41A8843

Další možnost je použít klasickou cestu k device nodům, ale používat uzly v cestě /dev/disk/, kde jsou k dispozici 4 adresáře a každý z nich poskytuje přístup k oddílům podle jiných vlastností.

by-id/
např. ata-ST3200822A_XXXXXXXX-part1, tedy typ a seriové číslo disku následované číslem oddílu.
by-label/
Tady se nachází názvy jednotlivých oddílů. Je to stejné jako použití LABEL
by-path/
např. pci-0000:00:08.0-scsi-1:0:0:0-part1, tedy identifikace sběrnice a kanálu disku s číslem oddílu jako u id.
by-uuid/
Tady se nachází dle očekávání UUID jednotlivých oddílů.

Který disk je který se dá zjistit pohodlně příkazem /sbin/blkid, který všechny relevantní informace přehledně vypíše. Stačí jej spustit bez parametrů pro výpis všech disků, o kterých jádro momentálně ví. A komu se nelíbí UUID jeho ext* oddílu, může si jej klidně změnit přes tune2fs -U. U ostatních souborových systémů obdobně: reiserfstune -u, jfs_tune -U, xfs_admin -U a další. Díky za tip v komentáři JS.

Nakonec ještě jedna utilitka, o které jsem se dověděl zde http://www.linux.com/feature/146951 Pokud si nejste jistí, kterému disku patří jisté UUID, můžete využít /sbin/findfs UUID=<uuid>, čímž dostanete klasický device node /dev/sdax.

Sdílet