Portál AbcLinuxu, 4. května 2025 18:32

Velikost volného místa v závislosti na nastavení mkfs.ext3

24.7.2008 11:32 | Přečteno: 2158× | Výběrový blog | poslední úprava: 24.7.2008 11:35

Mnoho lidí žehrá na statické alokování inodů v systému souborů ext3. Tvrdí, že inodů je buď málo a dojdou, nebo mnoho a zabírají místo. Pojďme to změřit.

Pro toto měření jsem vyhradil 40GB (LV) oddíl na disku. V dalším textu budu používat předpony jednotek: k=1024B, M=1048576B, G=1073741824B, nechce se mi psat MiB apod.

Default (8kB/inode; 4kB/block)

Standardní nastavení e2fsprogs v CentOS 5.2. Dle wiki je maximální velikost souboru 2TB a FS 8TB.

mkfs.ext3 -m 0 ... 
1k blocksusedavailable
4128492818024041104688
InodesIusedIfree
5242880115242869

Mnoho souborů (1k/1k)

Nastavení poskytující nejvíce volných inod (=souborů). Trochu déle se vytváří a kontroluje, což může být někdy nevýhoda. Podle vývojářů však vysoký počet bloků FS nevadí a nesnižuje jeho výkon. Podle wikipedie má takové nastavení limit 16GB/soubor 2TB/FS.

mkfs.ext3 -m 0 -i 1024 -b 1024 ... 
1k blocksusedavailable
366870213752036649501
InodesIusedIfree
419430401141943029

Velké soubory (-T largefile 1MB/inode; 4kB/block)

Nastavení pro velké soubory (>1MB), vytváří se rychle.

mkfs.ext3 -m 0 -T largefile ...
1k blocksusedavailable
4193516818024041754928
InodesIusedIfree
409601140949

Ještě větší soubory (-T largefile4 4MB/inode; 4kB/block)

Nastavení pro obrovské soubory (>4MB), vytváří se bleskurychle.

mkfs.ext3 -m 0 -T largefile4 ...
1k blocksusedavailable
4193900818024041758768
InodesIusedIfree
102401110229

Závěr

Procento volného místa v následující tabulce jsem vztahoval k defaultnímu nastavení mkfs.ext3. Je patrné, že snížením počtu inodů mnoho místa nezískáme, naopak přijdeme o možnost zápisu dalších souborů (místo ztracené neúplnými bloky je stejné jako u defaultu). Naopak v případě extrémního počtu inodů přijdeme o přibližně 10% místa, slack-space se naopak sníží na minimum (toto měření není součástí tohoto testu).

kB/nodesVolné místo kB (GB)%
441104688 (39.20)100.0
136649501 (34.95)89.2
102441754928 (39.82)101.6
409641758768 (39.82)101.6
       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

24.7.2008 11:55 gnome-hater
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
Odpovědět | Sbalit | Link | Blokovat | Admin
Hmm, zajímavé. Díky za test. Ještě by to chtělo změřit na ext4 s těma extentama či jak se tomu říká :)
Heron avatar 24.7.2008 11:58 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
Ok, nahodím VMWARE a jestli se mi podaří do CentOSu dostat ext4, tak to sem pastnu.
24.7.2008 12:19 gnome-hater
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
Díky, klidně bych se do toho pustil sám, ale mé disky praskají ve švech :)
Heron avatar 24.7.2008 12:27 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
Také toho místa nemám nejvíce :-)

Než se pustím do kompilace kernelu, neznáš nějaké distro (easy to install), které ext4 už umí?
24.7.2008 12:50 gnome-hater
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
Tak to budeš muset jít za někým jiným, jádro vždycky kompiluju sám. Asi to nikde moc nebude, ještě to není moc vychytaný, stabilizovaný a tak. Ale tipuju fedoru, ta je docela bleeding-edge, určitě ti bude šmakovat:)
Heron avatar 24.7.2008 14:02 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
Hmm, ve system rescue (posledni beta) mela byt podpora, ale mkfs.ext4 neni. Takze tuto snahu prozatim odkladam.
Heron avatar 28.7.2008 14:52 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
Aha, tak to není mkfs.ext4, ale mkfs.ext3 -E test_fs
progdan avatar 24.7.2008 12:57 progdan | skóre: 34 | blog: Archař | Teplice/Brno
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
AFAIK Sabayon Linux ma podporu EXT4
Collecting data is only the first step toward wisdom, but sharing data is the first step toward the community.
michich avatar 24.7.2008 15:53 michich | skóre: 51 | blog: ohrivane_parky
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
Fedora by to měla umět. Anacondě musíš dát myslím parametr "ext4", aby ti možnost instalace na ext4 nabízela.
Heron avatar 24.7.2008 16:11 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
Ok, takže ji nechám stáhnout a někdy (== neurčito ;-) ) se na to vrhnu, dík.
24.7.2008 12:46 myself
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
Odpovědět | Sbalit | Link | Blokovat | Admin
Nechcem rypat, ale je naozaj potrebne to testovat? Neda sa to vypocitat?
24.7.2008 14:26 Käyttäjä 11133 | skóre: 58 | blog: Ajattelee menneisyyttä
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
Heron je fyzik, on nevěří teoriím pokud si je neověří experimentem :-)
24.7.2008 15:02 Petr
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
Pokud je to tak mohl by mu někdo vysvětlit že jaderný výbuch je vlastně naprosto nezajímavý a jakýkoliv zájem o něj je nežádoucí? :-)
Heron avatar 24.7.2008 15:30 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
LOL

No především si myslím, že tento experiment je méně náročnější na čas než studovat on disk format u ext3 :-D
24.7.2008 21:53 myself
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
To uznavam. V mojej situacii (plny disk) by som vsak takyto experiment asi neuskutocnil :)
alblaho avatar 24.7.2008 18:09 alblaho | skóre: 17 | blog: alblog
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
Odpovědět | Sbalit | Link | Blokovat | Admin
Já bývám největší řvoun, když přijde na tu alokaci inodů. Dokonce s oblibou používám přívlastek feudální, protože design extX mi feudalismus asociuje (FAT je asi doba kamenná).

Nicméně díky za testy a musím uznat, že výchozí nastavení je asi hodně rozumné. Hele, nemohl bys ten disk zformátovat na ReiserFS a ukázat volné místo? Tvůj výchozí formát ext3 zabírá 800 MiB.
Heron avatar 24.7.2008 18:54 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
Restartoval jsem k vůli tobě server, tak si toho važ ;-)
Filesystem    Type   1K-blocks      Used Available Use% Mounted on
/dev/mapper/VGraid-test
          reiserfs    41941756     32840  41908916   1% /mnt/t

reiser: 41908916
ext3:   41104688
101.956% Takže trochu lepší než largefile4, pochopitelně s možností umístění více souborů.
alblaho avatar 24.7.2008 20:02 alblaho | skóre: 17 | blog: alblog
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
Jí si toho vážím, fakt díky.

Závěr je ten, že ext4 nebude taková mrdka, jak jsem si myslel.

Já jsem na reiserFS přešel z Ext3 kvůli rychlosti. Ale jsem si vědom, že ext3 jde zrychlit zapnutím nějakých těch dir_index. ReiserFS je ale rychlý už ve výchozím nastavení, není třeba s ničím laborovat. Myslím, že u ext4 budou ty indexy adresářů zaplé rovnou.
Heron avatar 24.7.2008 20:35 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
To spíše změnou žurnálovacího modu na writeback (to používá i reiser), ext3 má standardně ordered.
michich avatar 24.7.2008 21:42 michich | skóre: 51 | blog: ohrivane_parky
Rozbalit Rozbalit vše Re: Velikost volného místa v závislosti na nastavení mkfs.ext3
Od nějaké verze e2fsprogs je dir_index defaultně pro ext3 zapnutý.
Heron avatar 25.7.2008 11:29 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše EXT4
Odpovědět | Sbalit | Link | Blokovat | Admin
Takže ext4

default

Ve Fedoře9 je std 4k bloky a 16k/inodu. Což dává na 40GiBi disku 2621440 souborů (nic moc).

Místo je 41104688kiBi

1k/1k
mkfs.ext3 -m 0 -L test -i 1024 -b 1024 -E test_fs /dev/VGtest/test
Teď pozor:

Available=31406621 1k blocks

Tj o 10GB (25%) méně !!!

Tak jsem snížil počet inod a zkusil, zda náhodou nevytváří inody dynamicky:
for i in $(seq -w 1 10240); do echo "ahoj" > $i.txt; done
-bash: 10229.txt: No space left on device 
Takže nikoliv :-(

Pokud ale použijeme 4k/4k (nebo -T news), místa je dost a 10mil souborů by mohlo postačovat.
Heron
alblaho avatar 25.7.2008 11:35 alblaho | skóre: 17 | blog: alblog
Rozbalit Rozbalit vše Re: EXT4
Dělat bloky jen 1k mi přijde v dnešní době docela psycho - to by si žádná fatka nelajzla. 4k mi přijdou filozofický správné, protože tak velké bývají i stránky paměti.

Jedna inoda na dva bloky mi přijde taky OK, pokud se tedy nejedná o nějakou specialitu (mail server?).
Heron avatar 25.7.2008 12:01 Heron | skóre: 53 | blog: root_at_heron | Olomouc
Rozbalit Rozbalit vše Re: EXT4
FATka na disketách měla 512B/block (tam tomu říkali cluster). Umí to i NTFS. Ale ano, po jednom zážitku s 15mil soubory také dávám přednost DB, kde to jen jde. :-) Někdo tu psal, že udělal MySQLFS přes Fuse. To by mohlo být zajímavé pro Maildiry a podobná zvěrstva.
alblaho avatar 25.7.2008 13:28 alblaho | skóre: 17 | blog: alblog
Rozbalit Rozbalit vše Re: EXT4
MySQL FS přes Fuse se mi zdá už trochu přes ruku. Kvůli databázi přímo na FS si Hans Reiser udělal RaiserFS - vždyť ten stromovitý layout je opsaný z databází.

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.