Já jsem je zkusil, ovšem jen zkusil, zatím nebyl čas nějak výrazněji používat. Papírově jsou výborné oba dva, větší budoucnost má určitě Btrfs.
NilFS2:
- automatické snapshotování třeba každých 5 vteřin, prostě kdykoli se něco změní na disku
- vhodné i pro SSD disky a flashky díky cyklickému zapisování po celém disku
Snapshoty celkem fungují, údajně se po nějaké době samy mažou (teda jen ty označené jako checkpoint), ačkoli změn nebylo tolik, aby to prošlo přes celý disk. Podrobnosti moc neznám. Mimo snapshotů a použití na SSD a flashkách ale tento FS nemá moc výhod.
BtrFS:
- snapshoty na požádání
- transparentní komprese
- nativně umí něco jako RAID
- tail packaging (slučování malých souborů k sobě, takže nezabírají celý sektor)
U toho se mi nepodařilo vytvořit snapshot (furt to háže nějakou chybu s ioctl), kromě toho mazání snapshotu ještě není implementováno (!), ačkoli se na něm právě teď (podle btrfsího wiki) pracuje. Měl by ale umět snapshoty i jen vybraného adresáře, ne celého disku jako nilfs2. Transparentní komprese funguje dobře, ale je ji nutno při přimountování, nelze říct „chci kompresi v tomto a tomto adresáři (a podadresářích)“. To je celkem nešikovné, je na nic komprimovat např. filmy, hudbu nebo obrázky. Tail packaging je ale výborný. Zkusil jsem překopírovat nějaký rozsáhlý projekt (zdrojáky - dost souborů) z ext3 na btrfs a na btrfs to zabíralo asi o polovinu méně místa (když nepočítám kompresi). RAID jsem nezkoušel, vystačím si s mdadm. Pro SSD disky je nutná volba při mountování.
Jinak plánuju udělat nějaké GUI pro správu snapshotů právě pro nilfs2 a btrfs (a možná zfs), ale to tak nejdříve za měsíc… ;-)