Uvolnění místa po smazání dat na serveru se ZFS¶
Na serverech využíváme souborový systém ZFS, který funguje na principu Copy-on-Write, což nám umožňuje zálohovat data pomocí snapshotů.
Princip Copy-on-Write znamená, že při změně souboru nebo dat nedojde k okamžitému přepsání starých dat na disku – místo toho se vytvoří nová verze na jiném místě. Původní data zůstávají nezměněná, dokud na ně existuje reference, například ze snapshotu.
Snapshoty uchovávají stav systému v okamžiku jejich vytvoření – smazané soubory jsou proto stále „zadrženy“ ve snapshotu, dokud není starý snapshot odstraněn.
Celý proces demonstrují následující grafy:
- Stav po smazání dat:
Snížila se hodnota "Used Space", avšak "Free Space" se nezvětšila. Zdánlivě klesla i celková velikost disku ("Total Size"), protože místo je stále obsazeno snapshoty. Data už nejsou ve /var/www, ale stále existují ve snapshotu na serveru.
Teprve po odstranění příslušných snapshotů se prostor na disku opravdu uvolní, což se projeví i v grafech.
- Stav po smazání snapshotů:
Hodnota "Used Space" zůstává stejná, ale "Total Size" se zvětší na původní hodnotu (o velikost smazaných snapshotů) a zvětší se i "Free Space". Místo po smazaných souborech se skutečně uvolní až teď.
V kritické situaci, kdy je nutné místo uvolnit co nejrychleji, můžeme celý proces urychlit.