Pambuyo pa miyezi 11 yokonza, pulojekiti ya OpenZFS 2.4.0 yatulutsidwa, yomwe ikukonzekera kukhazikitsa njira ya mafayilo a ZFS ya Linux ndi FreeBSD. Pulojekitiyi idadziwika kuti "ZFS on Linux"ndipo kale inali yokhazikika pakupanga gawo la kernel Linux, koma pambuyo pophatikiza ndi code kuchokera ku FreeBSD, idazindikirika ngati njira yayikulu yogwiritsira ntchito OpenZFS ndipo idasinthidwa dzina.
Ntchito ya OpenZFS yatsimikiziridwa ndi kernels Linux 4.18 mpaka 6.18 ndi nthambi zonse za FreeBSD kuyambira ndi 13.3. Khodiyi imagawidwa pansi pa layisensi yaulere ya CDDL. OpenZFS imagwiritsidwa ntchito kale mu FreeBSD ndipo ikuphatikizidwa mu magawidwe. Debian, Ubuntu, Gentoo, NixOS ndi ALT LinuxMaphukusi okhala ndi mtundu watsopano adzakonzedwa kuti agwiritsidwe ntchito posachedwa. Linuxkuphatikiza Debian, Ubuntu, Fedora, RHEL/CentOS.
OpenZFS imapereka kukhazikitsidwa kwa zigawo za ZFS zokhudzana ndi mafayilo amafayilo komanso woyang'anira voliyumu. Zigawo zomwe zakhazikitsidwa: SPA (Storage Pool Allocator), DMU (Data Management Unit), ZVOL (ZFS Emulated Volume) ndi ZPL (ZFS POSIX Layer). Pulojekitiyi imalolanso ZFS kugwiritsidwa ntchito ngati kumbuyo kwa fayilo ya Luster clustered. Ntchito ya OpenZFS idakhazikitsidwa ndi code yoyambirira ya ZFS, yotumizidwa kuchokera ku projekiti ya OpenSolaris ndikukulitsidwa ndikuwongolera ndi kukonza kuchokera kugulu la Illumos. Ntchitoyi ikukonzedwa ndi ogwira ntchito ku Livermore National Laboratory pansi pa mgwirizano ndi Dipatimenti ya Zamagetsi ku US.
Khodiyi imagawidwa pansi pa layisensi yaulere ya CDDL, yomwe sigwirizana ndi GPLv2, zomwe zimaletsa OpenZFS kuphatikizidwa mu kernel yayikulu. Linux, popeza kusakaniza ma code pansi pa zilolezo za GPLv2 ndi CDDL sikuvomerezeka. Pofuna kupewa kusagwirizana kwa zilolezo, adaganiza zogawa malondawo kwa Linux Yokhala ndi chilolezo chonse pansi pa CDDL ngati gawo lotha kunyamulidwa padera, logawidwa padera kuchokera ku kernel. Kukhazikika kwa OpenZFS codebase kumaonedwa ngati kofanana ndi machitidwe ena amafayilo a Linux.
Zosintha zazikulu:
- Kutha kukhazikitsa ma quota okhazikika a ogwiritsa ntchito, magulu, ndi mapulojekiti kwagwiritsidwa ntchito. M'mabaibulo am'mbuyomu, ma quota ankangokhazikitsidwa payekhapayekha pa ID iliyonse ya wogwiritsa ntchito. Mtundu watsopano tsopano umakulolani kukhazikitsa mtengo wokhazikika womwe udzagwiritsidwe ntchito ngati palibe quota yomwe yakhazikitsidwa kwa wogwiritsa ntchito winawake.
- Yawonjezera kuthekera kobwerera m'mbuyo kuchokera ku direct I/O mode (O_DIRECT, Direct I/O) kupita ku njira yopepuka ya I/O yosasungidwa ya zopempha zomwe sizikugwirizana ndi malire a tsamba la kukumbukira, zomwe sizithandizidwa mu Direct I/O.
- Njira yatsopano yolumikizirana yochepetsera liwiro la ntchito zolembera ndi kuyika ma block ikuperekedwa, yomwe imachepetsa kugawikana kwa vdev (Virtual Device) mwa kuphatikiza ntchito zambiri zolembera ndikugwiritsa ntchito madera akuluakulu omasuka m'malo moyika zotsatira za ntchito imodzi yolembera m'malo ang'onoang'ono omasuka.
- Kugwira ntchito kwa encryption kwakula bwino pogwiritsa ntchito malangizo a AVX2 mu AES-GCM algorithm kukhazikitsa. Mu mayeso athu, liwiro lafika pa 80%.
- Ma block a ZIL (ZFS Intent Log) tsopano akhoza kuyikidwa osati pa ma vdev wamba kapena pa chipangizo china cha SLOG, komanso pa ma vdev odzipereka. Ngati vdev wamba ikugwirizana ndi hard drive ndi vdev wodzipereka wokhala ndi SSD, kusinthaku kumaletsa zochitika pamene deta imalembedwa ku SSD ndipo ma block a ZIL ogwirizana nawo amalembedwa ku hard drive, zomwe zimayambitsa kuchedwa kosafunikira.
- Katundu wa special_small_blocks tsopano akhoza kukhazikitsidwa pa magawo (ZVOLS) m'malo mwa mafayilo okha, zomwe zimathandiza kuti mabuloko ang'onoang'ono agawidwe pa vdev yapadera, monga SSD.
- Yawonjezera njira yolemberanso "zfs rewrite -P", yomwe imasiya nthawi yolenga yolondola yosasinthika nthawi iliyonse ikatheka, zomwe zimathandiza kusiyanitsa mabuloko omwe amangosunthidwa kupita ku dziwe kuchokera ku mabuloko omwe adasinthidwa ndi wogwiritsa ntchito.
- Malamulo a "zpool trim", "zpool scrub", ndi "zpool initialize" tsopano ali ndi njira ya "-a" (--all), yomwe imalola kuti malamulo awa azigwiritsidwa ntchito motsutsana ndi ma pool onse otumizidwa nthawi imodzi.
- Adawonjezera lamulo la "zpool scrub -S -E" kuti achite checksum check pa data yomwe ikugwera mkati mwa nthawi inayake.
- Yawonjezera njira zatsopano zosinthira deta.
Source: opennet.ru
