Souborové systémy
Z MiS
Obsah[skrýt] |
Souborový systém
- Na disk ukládáme
- data souborů
- metadata
- pomocné informace, pomocí kterých data vyhledáváme
- vlastník souboru, název souboru, velikost, práva,...
- Souborový systém
Souborový systém (FS) je:
- formát zápisu metadat („Používám souborový systém ext3.“)
- označení pro konkrétní metadata na disku („Došlo k poškození souborového systému.“)
Cluster
- Základní součást datové oblasti logického disku.
- Nejmenší počet sektorů, které mohou tvořit soubor.
- Vliv velikosti clusteru na výkon FS
- Velikost nastavujeme při formátování.
- Pro celý souborový systém musí být jednotná velikost.
Žurnálování
- Způsob práce s diskem, kdy využívám speciální datovou strukturu (žurnál), abych zabránil poškození souborového systému při havárii počítače.
- Princip
- Když chci provádět diskovou operaci (mazat soubor, měnit nebo vytvářet soubor, vytvářet složku,...), pak:
- Nejprve do žurnálu zapíši, co budu provádět.
- Pak provádím diskovou operaci.
- Pokud se operace dokončí v pořádku, potvrdím ji v žurnálu (commit).
- Co když dojde k přerušení operace?
- Při dalším spuštění najdeme v žurnálu nepotvrzené operace.
- Tyto přerušené operace musíme odvolat. (Některé možná půjdou i dokončit.)
- Poznámky
- Funkce žurnálování může být narušeno užitím cache v disku. (Disk nahlásí dokončení operace, ale data jsou jen v cache, nikoli fyzicky zapsána na disk.)
- Žurnálování nevyřeší ztrátu dat, která se nestihla zapisat na pevný disk! Nicméně zajišťuje, že nedojde k porušení souborového systému.
Další vlastnosti FS
- maximální velikost diskového oddílu,
- maximální velikos souboru,
- podpora nastavení práv,
- možnost vytváření snímků (image),
- ...
Typy souborových systémů
- diskové
- síťové
- nfs
- smb
- paměťové
- tmpfs
- virtuální
- procfs
- fdfs
Příklady (diskových) FS:
NTFS
- Zaveden ve Windows NT.
- Podpora šifrování, komprese.
- Obvykle menší clustery než u FAT32.
- Názvy souborů v UTF8.
- Existuje více verzí, aktuální verze NTFS v. 5 (Windows 7)
- Problematická podpora mimo Windows.
FAT/FAT32/exFAT
- Pochází z MS-DOSu resp. Windows 95.
- Dnes na disketách a paměťových kartách.
- FAT(16)
- Dnes již historický (omezení velikosti oddílu).
- Názvy souborů 8+3 znaky, bez podpory diakritiky.
- FAT32
- delší jména souborů než u FAT,
- soubory velikosti max. 2 GB,
- velké disky pouze za cenu vyšší velikosti clusteru.
- Zastaralý — princip zůstává stejný jako u FAT16.
- Náchylný k chybám, nemá žurnálování.
- Široká podpora (HW zařízení, operační systémy,...).
- Jednoduchý na implementaci.
- exFAT
- jen Microsoft, jako náhrada FAT32 pro flash-disky.
- rozšiřuje FAT32
- odstraňuje omezení velikosti souboru
- Může podporovat žurnálování, pokud to povolíme.
ext2/ext3/ext4
- Implementovány v Unixových systémech, standardní volba pro většinu linuxových distribucí.
- Vzájemně kompatibilní.
- ext3
- Zpětně kompatibilní s ext2.
- Přidává žurnálování.
- Podporuje POSIX ACL (Access Control Lists).
- Není klasická defragmentace.
- Kontrola disku (
fsck
) jen v režimu read-only - Není transparentní komprese.
- Viz také Wikipedia.org > Ext3
- ext4
- dnes nativní pro běžné uživatelské distribuce Linuxu
btrfs
- Pokročilý souborový systém pro GNU/Linux, Solaris,...
- Subvoluming
- Jeden FS může být rozprostřen přes více fyzických zařízení.
- Prostor (raw storage) rozdělen na úseky (např. 1GB), které se pak spojují do subvolumes.
- Nahrazuje LVM (Logical Volume Manager) a ZFS.
- Snapshots (snímky disku)
- Ukládání současného stavu disku a změn oproti tomuto stavu.
- Copy on write
- Vytváření kopie svazku při současné práci se svazkem.
- <https://btrfs.wiki.kernel.org/index.php/Main_Page>
- Vyvinut firmou Oracle, dnes GPL.
- Teprve se chystá podpora kontroly a opravy (rok 2012).
- Vlastnosti
- Velikost souboru až 2^64 B ~ 16 EiB
- Dynamic i-node allocation
- Podpora svazků (volumes) a RAID vestavěná ve FS
- RAID 0, 1 a 10
- chystá se RAID 5 a 6
- Kontrolní součty (checksumming)
- Body obnovení (snapshotting) — uchová stav systému před rizikovou operací.
- On-line defragmentation.
HFS+
- MacOS X
- počítače Apple
swap
- Pro odkládání nepotřebných paměťových bloků na disk.
- Pod Windows se řeší speciálním souborem.
proc
- Pouze virtuální FS.
- Slouží k práci s procesy.
Související pojmy
LVM
- Systém pro správu logických oblastí.
- Dělá mezivrstvu mezi operačním systémem a fyzickým rozdělením disku (MBR, GPT,...).
- Umožňuje snadno měnit velikosti logických svazků, zálohovat logické svazky, simulovat RAID atd.
RAID
- Využití více fyzických disků pro redundantní ukládání dat.
- Při výpadku jednoho disku nepřijdu o data, data jdou dopočítat z informací na ostatních discích.
- Nicméně nemohu využít celý součet kapacit všech disků, část celkové kapacity je využita pro kontrolní součty.
Režimy: RAID 0, RAID 1, RAID 5,...