Šifrování je z mého pohledu jediná killer featura, kterou ZFS má. Všechno ostatní, co říkáte, umí i BTRFS. Ale protože podpora šifrování se postupně objevuje i v jiných FS, jako F2FS, třeba se dočkáme toho, že se jednou implementuje správně, tj. na úrovni VFS, a pak ji bude moct používat i BTRFS a ZFS už nebude potřeba.
OpenSUSE, defaultní instalace na laptopu. Vždy se to přibližně po půl roce provozu se to sesypalo a nedalo se to ani namountovat. Nic důležitýho jsem tam neměl, home a veškerou konfiguraci mám ve verzovacím systému, tak jsem se v tom nevrtal a přeinstaloval.
Po druhém pádu jsem přešel na ubuntu s homem na ZFS, to tam mám přibližně dva roky. Teď na podzim jsem nainstaloval 19.10 se ZFS rootem a jsem spokojenej. Funguje to velice dobře. Ze ZFS používám většinu pokročilých vlastností a zatím bez problému.
Úplné rozsypání jsem zažil někdy na začátku 2016 s tehdy aktuálním kernelem, začalo to hlásit "corrupt leaf", ačkoli scrub procházel bez problému. Data byla stále dostupná, takže šla vykopírovat až na těch několik poškozených souborů. Pak jsem pustil fsck a ten smazal rekurzivně celý adresářový strom. A pak už to nešlo ani namountovat.
Zbytek byly nefatální problémy:
- RAID1 šel degradovaně připojit pro zápis pouze jednou, pak jen pro čtení. To opravili před pár lety.
- Dostalo se to do stavu (vytvářením a mazáním snapshotů, i když jsem je nemazal na přeskáčku), kdy metadata zabírala spoustu místa a bylo potřeba pustit balance -musage 20, což trvalo několik dní na lowendových rotačních discích (6TB). Když se to stalo podruhé (cca. po dvou letech provozu), bylo to celé tak pomalé, že jsem to zrušil a vytvořil znovu.
- Opakovaně se tomu na 4.15 daří vyrábět nested snapshoty, které se musí mazat rekurzivně. Takže workaround v pohodě, ale přijít na to chvíli trvalo (chybová hláška byla useless).
- Kolem 4.1 vyráběl Dovecot na btrfs RAID 1 soubory, které při čtení vracely I/O error, žádnou chybu to nezalogovalo, scrub bez potíží a po rebootu se to vždycky na pár dní samo opravilo.
Připadámi divné, aby někdo, kdo vytváří externí proprietární komponentu, říkal někomu jak má psát jádro, zvláště když tohle jsou lidé, kteří píší kód často zadarmo a ve svém volném čase (a dělají to rádi právě proto, že nemohou být vydíráni korporacemi). Oracle může těžit ze své dominance u jiných produktů, např. Java, ale tady arogance nepadá na úrodnou půdu.
Jinak, Oracle má svůj Linux (přebarvený Red Hat) a nic mu nebrání udělat si fork jádra, aby mu ZFS fungovalo tak jak si představuje.
Zajímavé je, že ani Linus se nevyjadřuje k tomu, že by licence byla nekompatibilní, ale jen k tomu, že by na to rád měl podpis.
Celé to je podle mě zbytečný šprajc. Těžko říct, jestli je cílem takového přístupu silou podpořit BTRFS, nebo jestli se jedná o osobní-ideovou nevraživost. Vyjádření, že povaha Oraclu je "nevypočitatelná" není moc dobrý argument a ukazuje spíš na tu nevraživost.
10. 1. 2020, 10:15 editováno autorem komentáře
Problém je v tom, že názor právníků je jedna věc, a co je opravdu správně určují až soudy.
Tedy pokud nějaký právník řekne ano, je to slučitelné, oni dají ZFS do jádra, a následně se s nimi bude Oracle soudit, může se ukázat, že je to úplně jinak (a pokuta bude nemalá), to je prostě riziko, které nechce nikdo z lidí kolem Linuxu zbytečně podstoupit.
Pokud by nějaký pohlavár z Oracle dodal důkaz že, je s tím v pohodě černé na bílém, snižuje se značně riziko, že by následně Oracle případný soudní spor vyhrál. Tedy nejedná se o zbytečný šprajc, ale o žádost s ohledem na eliminaci možného rizika.
Ale o porušení jakého práva Oraclu by se mělo jednat? To mi ve všech pramenech chybí.
Jediné, co je k dispozici, je vyjádření, že CDDL je příliš "měkká" a nezaručuje kázeň vývojářů, jakou vyžaduje GPL.
To však nepřináší riziko žaloby ze strany Oraclu, to je spíš myšlenková nekompatibilita licencí, než právní.
Ale o porušení jakého práva Oraclu by se mělo jednat?
O porušení autorských práv. Oracle poskytuje ke kódu nějaká práva a šířit tento kód pod GPL může znamenat, že se dostanete mimo tato poskytnutá práva. Protože v autorském právu platí, že co není povoleno, je zakázáno, dokud si nejste jist, že práva autora neporušíte, musíte předpokládat opak.
Oracle poskytuje ke kódu nějaká práva a šířit tento kód pod GPL může znamenat, že se dostanete mimo tato poskytnutá práva. Protože v autorském právu platí, že co není povoleno, je zakázáno, dokud si nejste jist, že práva autora neporušíte, musíte předpokládat opak.
Jenže to tak v tomto případě není. CDDL dává větší práva. Jediné, co vadí některým je to, že nevyžaduje striktní následné uvolňování tak, jako GPL. Takže CDDL je kompatibilní z hlediska práva, jen se některým nehodí do filozofie, ZFS by bylo možno dál vyvíjet volněji, než samotný Linux. Proto taky Linus nepsal o právních důvodech (není hloupý chlapík) - chtěli by ZFS evangelizovat - což už s právními riziky nesouvisí.
@Filip Jirsák
Pokud se ZFS začlení do Linuxu, bude v něm část kódu pod CDDL a k němu budou přibývat nové části kódu pod GPL.
Ty části kódu po CDDL zůstanou pod CDDL - to Linux ani Oracle nijak nepoškodí.
Ty části kódu, co vzniknou pod GPL už budou mít striktnější licenci.
Ke kolizi práv tam nedochází. Pokud chcete CDDL přelicencovat na GPL, tak to samozřejmě nejde, ale není to ani potřeba.
Miroslav Šilhavý: Místo tautologických dojmů doporučuju přečíst si GPL. Mimochodem, to, že vy máte bez přemýšlení jasno, asi pro většinu lidí není dostatečná záruka toho, že kombinace CDDL a GPL je právně nezávadná. Proto to chtějí slyšet od významnějších autorit, třeba Oracle. Nenapadlo vás také, že pokud by to bylo tak jasné a Oracle to používání ZFS pod Linuxem chtěl, tak už by dávno ten dopis napsal?
Ano, pokud to berete tak, že by se to mělo udělat tak, že Linux náhle bude pro dvěma licencemi tedy GPL pro Linux a CDDL pro ZFS, tak se dostáváte do problému s GPL, která se chová - jak již zmiňoval minulý šéf M$ jako "rakovina" (je to by-design, aby se open-source dobře šířilo), nejde moc dobře kombinovat na úrovni zdrojáků (leda na úrovni binárek) s jakýmikoliv jinými licencemi, protože jakákoliv součást musí být i pod GPL jinak GPL porušujete. Tedy ZFS by se po začlenění do Linuxu muselo vydat i pod GPL (duální licence CDDL a GPL).
Právní problém je tedy obecně v tom, zda je možné ZFS dále vydat pod GPL a tedy slučitelnost CDDL a GPL, která je pochybná.
nejde moc dobře kombinovat na úrovni zdrojáků (leda na úrovni binárek) s jakýmikoliv jinými licencemi, protože jakákoliv součást musí být i pod GPL jinak GPL porušujete
Zdrojový kód ZFS v Linuxu by být mohl. Jen by tuto část mohl do budoucna kdokoliv vykuchat a používat ji dle libosti, aniž by další zdrojové kódy zveřejňoval. Linux by tím nic moc neztratil - přijal by darovanou část a nemusel by hledět, jestli tuto část někdo převezme dál. Na tom neprodělá.
Právní problém je tedy obecně v tom, zda je možné ZFS dále vydat pod GPL a tedy slučitelnost CDDL a GPL, která je pochybná.
ZFS jistě nejde přelicencovat pod GPL, ale nepovažuji to vůbec za nutné. Pokud si autoři ZFS přejí, aby byl k dispozici ještě volněji než GPL, tak proč by měl někdo tuto část omezovat.
Tohle je už takový evergreen, přitom řešení je jednoduché. Kdo chce ZFS, tak jej má v nativní podobě na FreeBSD nebo třeba libovolném klonu Solarisu. Zkrátka výrobce ZFS nechce, aby se používalo na Linuxu, tak to dává najevo licencí. Na Linuxu máme BTRFS a kdo chce ZFS, nechť si vedle toho postaví FreeBSD a má výhody z obou stran.
Zkrátka výrobce ZFS nechce, aby se používalo na Linuxu, tak to dává najevo licencí.
To je právě dost podivné. CDDL je volnější než GPL a při porovnání licencní se nedá najít žádné místo, které by Oracle poškozovalo začleněním do Linuxu. To, že licencí to dává najevo je fáma, která se začala od té doby šířit, všichni ji opakují, ale argumenty nikdo ve skutečnosti nepředkládá.
Tam se ovšem praví to, že nelze změnit licenci na GPL, která je víc striktní (nutnost kód dál distribuovat volně).
To se samozřejmě kříží s myšlenkou GPL. Ano, Linux by nebyl čistě GPL a muselo by se rozlišovat použití a licence pro další mutace. GPL vyžaduje víc povinností a ty u CDDL nejsou (do budoucna) zaručeny. Nebrání to však integrovat ZFS do Linuxu "tady a teď". Proto tomu říkám "nekonstruktivní šprajc".
Pěkná reakce na Linusovo blábolení ohledně ZFS:
https://arstechnica.com/gadgets/2020/01/linus-torvalds-zfs-statements-arent-right-heres-the-straight-dope/