Operační systémy Soubory a adresáře © Milan Keršláger 14.04.2018 http://www.pslib.cz/ke/slajdy http://creativecommons.org/licenses/by-nc-nd/3.0/
Soubor pojmenovaná posloupnost bitů obsah souboru bez struktury název jako identifikace pochází z roku 1952 (skupina děrných štítků) nese doplňující informace (metadata) abstraktní přístup k datům program vytváří, otevírá, čte, zapisuje, maže, zavírá stejné bez rozlišení na použitý úložný hardware v unixových systémech je téměř vše soubor
Konvence přípon jménosouboru.přípona unixové systémy příponu nerozlišují slouží pouze pro uživatele spustitelné soubory bez přípony konvence přípon .c → zdrojový kód v jazyce C .h → hlavičkový soubor pro jazyk C .txt → textový soubor (holý text) atd.
Speciální soubory samy o sobě neobsahují data jádro při manipulaci doplňuje data odjinud odlišeny položkou „typ“ b → blokové zařízení (block) c → znakové zařízení (char) p → roura (pipe) s → soket zařízení soustředěna do adresáře /dev speciální soubor ale může být kdekoliv
Vlastnictví souboru přejmenování nemění vlastnictví souboru kopírování kopie patří uživateli vytvářejícímu kopii přesun v rámci FS se vlastnictví nemění při kopírování na jiný FS → aktuální uživatel editace nemění vlastníka, pozor na editor (záložní kopie)
Adresář slouží k organizaci souborů vytváří stromovou strukturu poprvé OS Multics (Denis Ritchie) původně jen jeden kořenový adresář adresář × složka (v GUI) implementováno od počátku Unixu systém souborů (FS – filesystem) pouze jeden kořen (root filesystem) ostatní FS se připojují do existujících adresářů příkaz mount
Označení adresářů tečka → . označuje aktuální adresář dvě tečky → .. označují nadřízený adresář lomítko → / označuje kořen stromové struktury adresářů v unixových systémech je vždy jen jeden aktuální adresář vlastnost běžícího procesu (v shellu příkaz pwd) slouží k doplnění relativní cesty
Cesta k souboru adresáře odděleny znakem „/“ (lomítko) tento znak není přípustný ve jméně souboru absolutní cesta začíná vždy znakem lomítka (kořen) /etc/fstab /etc/passwd /home relativní cesta začíná jiným znakem, než lomítko fstab ./fstab ../etc/fstab
Systém souborů speciální struktura dat data + metadata různý typy (ext4, XFS, FAT, NTFS, …) umožňuje uložení souborů (a adresářů) kořenový systém souborů připojuje se jako první po startu jádra OS jádro samo o sobě žádný další FS nepřipojuje musí obsahovat vše pro zahájení startu počítače program init,startovací skripty, konfigurační soubory
Metadata „data o datech“ v reálném životě např. katalog v knihovně obsahují informace nutné pro orientaci ve FS popisují soubory, adresáře a další informace o FS konzistence metadat důležité pro činnost jádra OS při poškození nutno opravit (fsck, chkdsk)
VFS Virtual Filesystem VFS implementuje jádro OS shora sjednocuje přístup ke všem FS (API) dle situace volá „ovladač“ konkrétního FS řeší cache pro soubory a adresáře další FS se připojují do existujících adresářů příkaz mount, umount, df $ df Souborový systém 1K bloků Použité Volné Uži% Připojeno do /dev/sda1 17856888 4189384 12745780 25% / /dev/sda3 18520212 11708304 5884556 67% /home tmpfs 379992 0 379992 0% /dev/shm
Připojování FS mount typ FS, speciální soubor zařízení, adresář mount /dev/sda3 /home umount slouží k odpojení připojeného FS FS nesmí být používán otevřený soubor, aktuální adresář /etc/fstab seznam FS připojovaných při startu systému
Kořenový adresář „/“ bin – základní nástroje dev – speciální soubory (zařízení) etc – konfigurační soubory home – domácí adresáře lib – knihovny root – domácí adresář správce počítače sbin – nástroje pro správu počítače tmp – sdílený dočasný adresář usr – uživatelské programy (obsah podobný kořeni) var – měnící se data (logy, databáze, ...)
Pevný odkaz pevná linka, anglicky hardlink další název pro soubor (nelze pro adresář) na jedny data může ukazovat více jmen souborů linky mají stejné číslo i-nodu nepřekročí hranici systému souborů nelze odlišit „původní název“ zvýší počet odkazů na soubor → +1 při smazání data uvolněna, až počet odkazů = 0 vzniká příkazem ln ln cesta [názevlinky]
Symbolický odkaz symbolická linka, anglicky symlink, softlink další název pro soubor nebo adresář ve skutečnosti malý soubor obsahuje cestu k cílovému souboru cesta může být absolutní i relativní (lepší) vyhodnocení oprávnění podle cílového souboru smazání linky neovlivní cílový soubor smazáním cíle „trčí do prázdna“ vzniká příkazem ln ln -s cesta [názevlinky]