Souborové systémy
Z MiS
Obsah |
Na disk ukládáme:
- data souborů
- metadata
- pomocné informace, pomocí kterých data hledáme
- vlastník souboru, název souboru, velikost, práva,...
Pojmy FS
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í
- defaultně struktury, jsou potvrzeny (commit) až po dokončení zápisu dat
- může být narušeno užitím cache v disku
- Princip:
- Chci provádět diskovou operaci
- mazat soubor
- vytvářet soubor
- vytvářet složku
- ...
- Postup akcí:
- 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.
- Co když dojde k problému?
- Právě prováděnou operaci musím odvolat.
- Chci provádět diskovou operaci
- Neřeší ztrátu dat, která se zapisovala!
- Zajišťuje, že nedojde k porušení souborového systému.
Další vlastnosti
- 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
- šifrování, komprese
- menší clustery než u FAT32
- názvy souborů v UTF8
FAT/FAT32/exFAT
- Pochází z MS-DOSu resp. Windows.
- Dnes na disketách a paměťových kartách
- FAT32
- Nevýhody
- delší jména souborů,
- soubory velikosti až 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í
- Výhody
- široká podpora
- HW zařízení
- operační systémy
- jednoduchý na implementaci
- nemá žurnálování
- široká podpora
- Nevýhody
- exFAT
- jen Microsoft
- rozšiřuje FAT32
- odstraňuje omezení velikosti souboru
- zřejmě může podporovat žurnálování, pokud to povolíme
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.
ext2/ext3/ext4
- Vzájemně kompatibilní.
- ext3
- en.wikipedia.org > Wiki > Ext3 <http://en.wikipedia.org/wiki/Ext3>
- +
- zpětně kompatibilní s ext2
- žurnálování <#Freemind_Link_343852720>
- defaultně struktury, jsou potvrzeny (commit) až po dokončení zápisu dat
- může být narušeno užitím cache v disku
- Podporuje POSIX ACL
- Access Control Lists
- -
- není klasická defragmentace <#_Freemind_Link_1286303196>
- fsck jen v režimu read-only
- není transparentní komprese
- ext4
- dnes nativní pro běžné uživatelské distribuce Linuxu
- BTRFS
- <https://btrfs.wiki.kernel.org/index.php/Main_Page>
- Historie
- vyvinut firmou Oracle
- dnes GPL
- default pro Fedora 16 či 17
- fedoraproject.org > Wiki > Features > F16BtrfsDefaultFs <http://fedoraproject.org/wiki/Features/F16BtrfsDefaultFs>
- teprve se chystá podpora kontroly a opravy
- 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 ryzikovou 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.