Akkor egy lépéssel hátrébb lépve:
Általában *X-világban használt natív fájlrendszereknek van valami kötelező metaadat területe. Ezt a legokosabb tervezéskor is "elpazarolja" az ember. Ilyen pl. a Szuperblokk (FS-tipus, méret, egyéb jellemzők tárolása.)
XFS esetén AG (Allocation Group) a neve annak az FS-objektumnak, amit amúgy (*BSD-n) UFS esetén CG-nek (Cylinder Group) hívnak (és mind a két esetben metaadatterület), és amelynek szerepe, hogy a fájlrendszeren levő adatokat (meta- és felhasználói egyaránt) szét lehessen szórni, kvázi párhuzamos diszkelérést biztosítva (van még pár egyéb funkciója). A lényegi különbség a kettő között, hogy a CG-kben valamely algoritmus szerint számolva fix mennyiségű i-node-nak szükséges metaadatot foglal le az mkfs, míg az AG-kben nem. Következésképpen UFS alatt elfogyhat a tárhely úgy, hogy allokálatlan i-node-ok pazarolnak tárhelyet, XFS-en pedig kb. egyszerre fog elfogyni, hisz amíg van hely, addig lehet mind a kettőt (i-node, adatblokk) lefoglalnia az FS-rétegnek. Természetesen abban megegyezik a kétféle FS, hogy a létrehozás pillanatában az adott FS-méretének függvényében jön létre X vagy éppen Y db. AG (CG). És értelemszerűen ezek az AG-k, CG-k rendelkeznek saját belső struktúrával, tehát helyet visznek el a "hasznos" (felhasználói) adat elől. No most itt jutottunk el a probléma megoldásáig: ha valaki tudja, hogy egy FS kb. hogy működik, akkor akár előre is gondolkodhat. Kb. minden fájlrendszertípus esetén van néhány utólagos tuning lehetőség (valami tunefs-szerű paranccsal), és ami fontosabb: tuningolási lehetőség a létrehozás - az mkfs (newfs) - időpontjában, ilyen-olyan mkfs opciók formájában. Azaz pl. ha zavar, hogy az XFS túl sok helyet pazarol el az AG-k (metaadat) miatt, akkor helyből bele lehet neki ugatni az mkfs.xfs -d agcount=K (vagy épp -d agsize=U) paraméterrel. Mivel nekem volt már rá szükségem, ezért volt már életemben olyan, hogy beleugattam ezen allokációs egységek darabszámába - ha jól rémlik, egy floppy-diskre felrakott FS esetén. Így le tudtam szorítani a pazarlás nagyságát.
Én az AG-t (CG-t) ugyanúgy megkerülhetetlen részének tekintem az FS-nek, mint magát a szuperblokkot, és elfogadom, hogy a minimálisan szükséges darabszám az kell. (Ahogy elfogadom, hogy általában szoktak használni partíciós táblát is - MBR vagy GPT formájút, most mindegy; azaz ennyit "pazarol a rendszer. Ha kritikus, hogy ne pazarlódjon el, akkor nem csinálok ilyet - de jellemzően felkészülök az ebből adódó nehézségekre). Viszont ha kényes vagyok a pazarlásra, akkor sokszor ebbe a jellemzőbe bele tudok szólni.
E mellett XFS-nél nem kell baszakodni az i-node-ok ilyen-olyan darabszámával, a többi FS-nél meg igen. Ezért írtam, hogy metaadat-kezelésben az XFS némileg kilóg a sorból.
/OT