Доступен промежуточный выпуск проекта 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

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