Pořádek v datech: Od bitů k souborům, obnova dat a žurnálování
Úvod: Chaos vs. Řád
Jak najít jehlu v kupce sena?
Cíl lekce: Pochopit, jak OS organizuje miliardy nul a jedniček na disku, aby se tvářily jako složky a soubory.
Motivace: Disk je jako obrovská knihovna s miliony knih, které ale nemají hřbety. Pokud nemáte katalog (Souborový systém), nenajdete nic.
Klíčový pojem: Abstrakce souboru (Everything is a file).
🗣️ Icebreaker (5 min):
Zeptejte se: "Kdo z vás už někdy ztratil data z flashky? A kdo z vás je dokázal obnovit?" (Většina řekne, že to nešlo). Dnes si ukážeme, že smazané soubory tam stále jsou, jen jsme ztratili mapu k nim.
Fyzická vs. Logická vrstva
Co je "pod kapotou" ikony?
Fyzická realita (Disk): Sektory, stopy, bloky. Jen shluky magnetických nebo elektrických nábojů. Disk neví, co je to "fotka z dovolené".
Souborový systém (File System): Překladač. Překládá "Otevři dopis.txt" na "Přečti sektor 504 až 508".
Otázka: Kolik místa zabere na disku "prázdná" složka? 0 bajtů?
Nikdy ne 0 bajtů! Složka je ve skutečnosti speciální soubor (tabulka), ve kterém je seznam věcí uvnitř. Tato tabulka něco váží. Tedy i prázdná složka užírá místo na disku.
🗣️ Analogie (5 min):
Složka není "pytel", do kterého věci padají. Složka je "seznam". Když dám soubor do složky, fyzicky se nepohne. Jen se do seznamu napíše: "Soubor X patří do složky Y".
Clustery a Slack Space
Proč malé soubory plýtvají místem?
Disk je rozdělen na chlívečky zvané Clustery (typicky 4 KB).
Pravidlo: Jeden cluster = Jeden soubor. Nelze sdílet.
Co se stane, když mám soubor velký jen 1 KB (textový dokument)?
Problém: Soubor má 1 KB. Cluster má 4 KB. Zbylé 3 KB jsou Slack Space (vnitřní fragmentace). Jsou prázdné, ale nikdo jiný je nesmí použít.
🗣️ Hloubka (10 min):
Analogie s krabicemi při stěhování. Máte jen krabice velikosti L. Chcete přestěhovat jeden hrnek. Dáte ho do krabice L. Zbytek krabice je plný vzduchu, ale nemůžete tam dát boty, protože krabice má nápis "Kuchyň". Tisíc malých souborů = tisíc poloprázdných krabic = obrovské plýtvání.
Anatomie souboru: Data vs. Metadata
Obálka a Dopis
Soubor se skládá ze dvou oddělených částí:
Payload (Data): Samotný obsah (pixely obrázku, text).
Metadata (Obal):
Název souboru
Velikost
Datum vytvoření / změny
Vlastník (Kdo to smí číst?)
Poloha na disku (Kde to leží?)
🗣️ Didaktika (5 min):
Vysvětlete, proč změna přípony (přepsání .docx na .jpg) nezmění soubor. Jen jste přepsali nápis na obálce. Uvnitř je pořád text, ne obrázek. Když se to OS pokusí otevřít jako obrázek, spadne to (protože data uvnitř nedávají jako pixely smysl).
Metody alokace (Jak to poskládat?)
1. Souvislá alokace (Contiguous)
Soubor leží v blocích hezky za sebou (1, 2, 3, 4).
Výhoda: Rychlé čtení (hlavička disku nemusí skákat).
Nevýhoda: Co když chci soubor zvětšit (připsat kapitolu), ale blok 5 je už obsazený jiným souborem? Musím celý soubor přesunout jinam. (Jako ve vlaku, kde musíte najít 4 volná sedadla vedle sebe).
🗣️ Historie:
Takto fungují CD/DVD nebo staré pásky. Pro moderní disky, kde se data mění, je to nepoužitelné.
Metody alokace
2. Zřetězená alokace (Linked - FAT)
Soubory jsou rozházené. V každém bloku je na konci napsáno: "Pokračuj na blok č. 58".
Výhoda: Žádná externí fragmentace. Soubor se vejde všude.
Nevýhoda:
Pomalé (disk skáče sem a tam).
Zranitelnost: Když se poškodí jeden blok uprostřed, ztratím "odkaz" na zbytek souboru. Řetěz se přetrhne.
🗣️ FAT32:
Tohle je princip starého systému FAT (File Allocation Table). Tabulka na začátku disku drží tyto řetězy.
Metody alokace
3. Indexovaná alokace (Inodes - NTFS/ext4)
Moderní standard (Linux, Windows, macOS).
Pro každý soubor existuje speciální záznam (I-node nebo MFT záznam), který funguje jako "Obsah knihy".
V I-nodu je seznam všech bloků: "Data jsou na 10, 58, 402 a 888."
Výhoda: Rychlý přímý přístup. Bezpečnost.
Zázrak přesunu: Proč přesun 10GB filmu trvá vteřinu (na stejném disku)?
Protože data se nepřesouvají! OS jen vezme I-node (ten malý záznam v tabulce) a přepíše v něm cestu z C:/Stažené na C:/Filmy. Fyzicky film leží stále na stejném místě. (Kopírování na flashku ale trvá dlouho, protože tam se data musí fyzicky duplikovat).
Smazání souboru: Velká lež
Co se stane, když vysypete koš?
Přepisovat data nulami trvá dlouho. OS je líný.
Smazání (Unlink): OS jen v hlavní tabulce smaže záznam o souboru a označí jeho místo jako "Volné k použití".
Realita: Data na disku stále jsou! Dokud je nepřepíšete novým souborem, lze je snadno obnovit (programy jako Recuva).
🗣️ Bezpečnost (10 min):
Varujte učitele: "Nikdy neprodávejte školní počítač jen po 'sformátování'. Sformátování jen vymaže obsah knihy (tabulku), ale stránky v knize zůstanou." Pro bezpečné smazání je nutný tzv. Wiping (přepsání náhodnými daty).
Žurnálování (Journaling)
Pojistka proti výpadku proudu
Scénář: Kopírujete 1000 fotek. V polovině vypadne proud.
Starý systém (FAT32): Disk je rozbitý, souborový systém neví, co tam je. Nutný ScanDisk.
Moderní systém (NTFS, ext4): Používá Žurnál (Deník).
Princip: Než OS něco udělá, napíše si do deníčku: "Jdu zapsat blok 50." Pak to udělá. Pak si to odškrtne.
Když vypadne proud, po startu se OS podívá do deníčku: "Aha, tohle jsem nestihl." A opraví to (Rollback).
🗣️ Analogie (5 min):
Horolezec, který se jistí karabinou. Než udělá nebezpečný krok, cvakne karabinu. Když spadne, visí na karabině (v žurnálu) a nezřítí se do propasti (ztráta dat).
Adresářová struktura (Strom)
Kořen a větve
Souborový systém je strom (hierarchická databáze).
Root (Kořen):
Windows: Každý disk má svůj kořen (C:\, D:\).
Linux/macOS: Existuje jen jeden kořen /. Vše ostatní (i flashky) se připojuje do něj.
🗣️ Praxe (5 min):
Upozorněte na rozdíl v lomítkách. Windows používá zpětné \ (backslash), zbytek světa a internet používá dopředné / (slash).
Souborové systémy v praxi: Válka formátů
Proč mi nejde nahrát film na flashku?
Systém
Kde se používá
Omezení / Výhody
FAT32
Staré flashky, SD karty.
Max soubor 4 GB! Kompatibilní se vším (TV, Auto, PC, Mac).
NTFS
Windows disky.
Bez limitu. Žurnálování. macOS ho umí jen číst (neumí na něj zapisovat).
exFAT
Nové flashky, velké SD karty.
Moderní verze FAT. Umí velké soubory. Funguje na Windows i Mac. Ideální pro přenos.
ext4 / APFS
Linux / Apple.
Windows je nevidí bez speciálního SW.
🗣️ Řešení problému (10 min):
Když žák přijde s tím, že mu nejde nahrát 8GB ISO soubor na 32GB flashku, na 99 % je naformátovaná na FAT32. Řešení: Přeformátovat na exFAT.
Unplugged aktivita: Lidský pevný disk
Simulace fragmentace ve třídě
Pravidla hry
Prostor: 10 židlí v řadě (to jsou Clustery 1-10).
Data: Žáci v barevných tričkách (Červení = Soubor A, Modří = Soubor B).
Úkol 1 (Zápis): Posaďte 3 Červené vedle sebe. Posaďte 2 Modré vedle sebe.
Úkol 2 (Mazání): Soubor A (Červení) je smazán. Žáci vstanou, židle jsou prázdné.
Úkol 3 (Fragmentace): Přichází Soubor C (5 Zelených). Ale máme volné židle 1,2,3 a pak 8,9. Zelení si nemohou sednout vedle sebe. Musí se rozdělit.
🗣️ Reflexe (10 min):
Třída vidí, že čtení "roztrženého" souboru (Zelení) by trvalo déle, kdyby čtecí hlava musela běhat zleva doprava. Vysvětlete pojem Defragmentace (přesazení žáků tak, aby Zelení seděli u sebe). U SSD už se nedělá!
Závěr a shrnutí 4. lekce
Co si pamatovat?
Složka je jen seznam (soubor), ne kontejner.
Smazání je jen odstranění záznamu v seznamu. Data zůstávají.
Cluster je nejmenší jednotka na disku. Malé soubory plýtvají místem (Slack space).
Na flashky používejte exFAT, abyste přenesli velké soubory mezi systémy.
🗣️ Upoutávka:
Příště se podíváme na Vstup a Výstup (I/O). Jak se počítač domluví s tiskárnou, myší a klávesnicí? Co je to ovladač a proč ho musíme instalovat?