Proiectul OpenZFS 2.2.1, care dezvoltă implementarea sistemului de fișiere ZFS pentru Linux și FreeBSD. Lansarea este remarcabilă prin adăugarea suportului pentru kernel. Linux 6.6 и попыткой устранения проблемы, приводящей к повреждению данных (обнулению части блоков) в файлах после их копирования.
Inițial, s-a presupus că problema apare doar în ramura 2.2.x și este cauzată de o eroare în mecanismul de clonare a blocurilor inclus în OpenZFS 2.2.0, care vă permite să creați o copie a unui fișier sau a unei părți a acestuia fără a-l duplica. date, folosind în a doua copie referințe la blocuri de date deja existente ale fișierului sursă fără copierea lor efectivă. În OpenZFS 2.2.1, pentru a bloca problema, mecanismul de clonare a blocurilor a fost dezactivat în mod implicit, iar setarea zfs_bclone_enabled a fost adăugată pentru a returna suportul pentru acest mod.
Позднее разработчики заявили о воспроизведении проблемы и в конфигурациях с веткой OpenZFS 2.1.x. Не подтвердились и предположения, что проблема проявляется на системах со старыми выпусками пакета coreutils — ошибку удалось воспроизвести во FreeBSD и в Linux-дистрибутивах со свежим выпуском coreutils 9.4.
Coruperea fișierelor are loc în circumstanțe destul de rare, de exemplu, rularea comenzii „emerge -1 dev-lang/go” în Gentoo are ca rezultat instalarea setului de instrumente Go cu fișiere corupte în /usr/lib/go/pkg/tool/ directorul linux_amd64/.compilare. Se presupune că eroarea a început să apară după setarea parametrului implicit „zfs_dmu_offset_next_sync=1” în versiunea openzfs 2.1.4. Sursa erorii nu a fost încă identificată. Ca o soluție recomandată pentru blocarea erorii, se propune să setați parametrul „/sys/module/zfs/parameters/zfs_dmu_offset_next_sync” la 0.
Sursa: opennet.ru
