Administrace OS Unix filesystém UFS mount snapshot RAID Ing. Zdeněk Muzikář, CSc., Ing. Jan Žďárek, Ph.D. Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti Zdeněk Muzikář, 2011
Vlastnosti Filesystém UFS vyvinul se z filesystému S5 na stejném principu i ext, ext2, ext3 velmi efektivní pro soubory do řádu desítek max. stovek MB neexistuje problém fragmentace dále neperspektivní (velké soubory, fsck, multi-volumes, ) Implementace a vnitřní struktura Bootblok, Superblok pracuje se (implicitně) s 8kB datovými bloky (16 sektorů) diskový prostor (slice) rozdělen na tzv. cylindr grupy (CG) i-node tabulka rozdělena na části alokační strategie vše v jedné CG struktura i-node atributy souboru: typ, př.práva, vlastník, skup.vlastník, velikost, 3 časy, čítač linků odkaz na shadow i-node v případě ACL 15 odkazů na datové bloky (12 přímých) možnost logování
Sektor 0 Sektory 1-15 Disk label (nebo rezervované místo) Filesystém UFS bootblok Implementace UFS na jednom slice disku (SPARC) nebo jednom slice v rámci partition (PC) Sektory 16-31 Primární superblok První cylindr grupa 16 0 Sektory 32-47 Záložní superblok slice 0 Cylindrgrup blok Inode tabulka (část) slice 1 Datové bloky slice 6 Druhá cylindr grupa Záložní superblok Cylindrgrup blok Inode tabulka (část) Datové bloky UFS Třetí cylindr grupa Záložní superblok Cylindrgrup blok Inode tabulka (část) Datové bloky
Vytoření a mount (UFS) Vytvoření filesystému newfs /dev/rdsk/c0d0s0 některé přepínače (viz manuálové stránky): -i počet byte diskového prostoru na 1 i-node -m minimální volné (nevyužitelné ) místo, v % jde kdykoli změnit příkazem tunefs Připojení filesystému (disku) mount F ufs /dev/dsk/c0d0... /mount-point mount vždy na blokové zařízení připojení přes cache znakové zařízení přímá vazba na driver fsck vždy na znakové zařízení vznikne záznam v /etc/mnttab
mount a umount (UFS) Automatický mount při bootu popsáno v /etc/vfstab #device device mount FS fsck mount mount #to mount to fsck point type pass at boot options /dev/dsk/c0t0d0s3 /dev/rdsk/c0t0d0s3 /mp ufs 1 yes nosuid,logging doporučená pravidla Příkazy mountall # vyžaduje entry v /etc/vfstab fstyp [-v] /dev/rdsk/c... # info o FS na disku tune2fs -l /dev/hda1 # Linux Odpojení disku umount /mount-point umount /dev/dsk/c0... # totéž jako mount-point umountall # vyžaduje entry v /etc/vfstab
fsck (filesystem check) fsck detekuje a opravuje v 5 průchodech nekonzistence FS umí nahradit superblok záložní verzí spouští se automaticky při bootu, je-li disk špinavý pracuje v interaktivním nebo neinteraktivním režimu adresář lost+found nesmí se spouštět na rw připojený FS spouští se přes znakový speciální soubor logging (journal/transactions) transakce na úrovni metadat je před provedením zapsána do FS rotační buffer zrychluje fsck po havárii
Snapshot (UFS) zapamatování definovaného stavu filesystému nejčastěji se používá k archivaci je třeba definovat soubor v pozadí (na jiném FS) jedná se o děravý soubor, kam se kopíruje původní stav příkaz fssnap vytvoří speciální snapshot soubor (zařízení), který lze přimountovat ro Př.(Solaris): /dev/fssnap/0 a /dev/rfssnap/0 Příklad (Solaris): mount -o ro `fssnap o bs=/var/tmp /export/home` /mpoint
RAID - I Redundant Array of Independent Disks Virtuální disk (Metadevice, Logical Volume, ) SW x HW řešení SW SVM, LVM, Veritas VM,.. ZFS filesystém Důvody zvýšení kapacity FS (i dynamicky) zvýšení bezpečnosti zvýšení výkonu RAID 0 - skládání concatenation (zřetězení) za sebe - neutrální z hlediska výkonu - lze použít k dynamickému zvětšení FS striping (prokládání) vedle sebe - zrychlení, riziko - často se kombinuje s RAID 1
RAID - II RAID 1 zrcadlení bezpečné, drahé rychlost neutrální nebo vyšší (čtení) při havárii minimální pokles výkonu možné strategie čtení: Round Robin, Geometric, First možné strategie zápisu: Paralel, Serial lze použít pro / FS RAID 5 pole s paritou (distribuovanou), stripe po blocích kompromis mezi bezpečností a cenou rychlost pro čtení vyšší, zápis pomalejší doporučení používat pro FS kde zápis <20% při havárii dramatický pokles výkonu SW RAID 5 nelze použít pro / FS a swap RAID 0+1, RAID 1+0 kombinace Stripe+Mirror nebo Mirror+Stripe zachová zvýšený výkon Stripe, ale kompenzuje riziko
RAID - III RAID 2 - jako RAID 3, ale stripe po bitech, zabezpečeno Hammingovým kódem, lze opravit chyby čtení, komplikované RAID 3 - jako RAID 5, ale stripe po bytech, dedikovaný paritní disk RAID 4 - jako RAID 5, ale dedikovaný paritní disk přetížený RAID 6 jako RAID 5, ale 2 paritní disky parita distribuovaná odolné proti výpadku 2 disků rychlost čtení jako RAID 5, zápis ještě pomalejší Soft partitions Rozdělení disku (virtuálního) na velký počet malých virtuálních disků Zásady při vytváření RAID maximální nezávislost komponent stejná kapacita a výkon komponent