Доступен промежуточный выпуск проекта OpenZFS 2.2.1, развивающего реализацию файловой системы ZFS для Linux и FreeBSD. Выпуск примечателен добавлением поддержки ядра Linux 6.6 и попыткой устранения проблемы, приводящей к повреждению данных (обнулению части блоков) в файлах после их копирования.

Изначально предполагалось, что проблема проявляется только в ветке 2.2.x и вызвана ошибкой во включённом в OpenZFS 2.2.0 механизме клонирования блоков, позволяющем создать копию файла или его части без дублирования данных, используя во второй копии ссылки на уже существующие блоки данных исходного файла без их фактического копирования. В версии OpenZFS 2.2.1 для блокирования проблемы механизм клонирования блоков был отключён по умолчанию, а для возвращения поддержки данного режима добавлена настройка zfs_bclone_enabled.

Позднее разработчики заявили о воспроизведении проблемы и в конфигурациях с веткой OpenZFS 2.1.x. Не подтвердились и предположения, что проблема проявляется на системах со старыми выпусками пакета coreutils - ошибку удалось воспроизвести во FreeBSD и в Linux-дистрибутивах со свежим выпуском coreutils 9.4.

Повреждение файлов проявляется при достаточно редком стечении обстоятельств, например, выполнение в Gentoo команды “emerge -1 dev-lang/go” приводит к установке инструментария для языка Go с повреждением файлов в каталоге /usr/lib/go/pkg/tool/linux_amd64/compile. Предполагается, что ошибка начала проявляться после выставления по умолчанию параметра “zfs_dmu_offset_next_sync=1” в версии openzfs 2.1.4. Источник ошибки пока не выявлен. В качестве рекомендованного обходного пути блокирования ошибки предложено выставить в 0 параметр “/sys/module/zfs/parameters/zfs_dmu_offset_next_sync”.

    • crypt
      link
      fedilink
      arrow-up
      0
      ·
      3 years ago
      crypt@witch ~ $ zfs version
      zfs-2.1.9-FreeBSD_g92e0d9d18
      zfs-kmod-2.1.9-FreeBSD_g92e0d9d18
      crypt@witch ~ $ freebsd-version 
      13.2-RELEASE-p5
      
      

      даже не задело. просто не попало в последний релиз FreeBSD.

      • odalist
        link
        fedilink
        arrow-up
        0
        ·
        3 years ago

        13.2-RELEASE-p5

        На 14.0 еще не обновлялся?

        • crypt
          link
          fedilink
          arrow-up
          0
          ·
          3 years ago

          это противоречит моей идеи стабильности. обновлю, когда EOL подойдет.

          • odalist
            link
            fedilink
            arrow-up
            0
            ·
            3 years ago

            когда EOL подойдет.

            Ясно. Я так и думал. Я тоже так буду делать. Все работает нормально в 13.2-RELEASE, так зачем лезть и наступать на грабли…

            • crypt
              link
              fedilink
              arrow-up
              0
              ·
              3 years ago

              да, пусть линуксоиды пока тестируют