Содержание
Российская компания Paragon Software опубликовала исходный код собственной реализации драйвера файловой системы NTFS для Linux. Соответствующий патч в список рассылки разработчиков ядра отправил один из основателей и генеральный директор компании Константин Комаров. Код разработки опубликован на условиях свободной лицензии GPL 2.0.
Драйвер добавляет в Linux полноценную поддержку основной файловой системы Microsoft Windows на уровне ядра, включая возможности актуальной версии NTFS 3.1. В их числе – воспроизведение изменений из журнала; поддержка обычных, сжатых и разреженных файлов.
Paragon Software планирует взять на себя сопровождение проекта, обеспечить исправление ошибок и добавление новой функциональности. В частности, разработчики обещают добавить поддержку полного журналирования поверх универсального блочного устройства (Journaling Block Device, JBD). На его основе, к примеру, организовано журналирование в «родной» для Linux файловой системе ext4.
Ранее Paragon Software предлагала лишь закрытую коммерческую версию драйвера Microsoft NTFS for Linux. Вероятно, на коде данной разработки и базируется новый открытый драйвер.
Как отмечает тематический ресурс Phoronix, в текущем виде разработка Paragon Software не готова к включению в ядро Linux, в частности из-за несоблюдения авторами ряда требований по оформлению патчей. К примеру, патч отправлен в рассылку в виде ссылки на единственный файл, содержащий более 27 тыс. строк, что существенно затрудняет обязательную процедуру проверки кода.
В комментариях к сообщению Комарова в рассылке также обращают внимание, что проект не собирается из исходного кода без внесения небольших изменений в Makefile проекта – специальный файл, который содержит инструкции утилиты автоматизации сборки make.
NTFS (New Technology File System, «файловая система новой технологии») – стандартная файловая система для семейства операционных систем Windows NT (куда входит в том числе и Windows 10) корпорации Microsoft. Впервые представлена в 1993 г. Спецификации NTFS закрыты, что значительно усложняет разработку драйверов для ее поддержки.
Операционные системы на базе ядра Linux «из коробки» поддерживают ряд современных файловых систем, в том числе XFS, JFS, BtrFS, ext4. Последняя является наиболее частым выбором пользователя. Поддержка NTFS в Linux также реализована – в ядро с версии 2.2 по умолчанию включен модуль, обеспечивающий поддержку данной файловой системы, но только в режиме чтения. То есть при необходимости пользователь Linux сможет подключить и скопировать данные с дисков и флеш-накопителей, записанных под Windows, однако полноценная работа с ними ему недоступна.
В настоящее время единственный способ получения в Linux полноценного доступа к NTFS-разделам, в том числе на запись, без приобретения коммерческих продуктов предполагает использование открытого проекта ntfs-3g. При применении ntfs-3g разделы NTFS монтируются (подключаются) с использованием модуля FUSE (Filesystem in Userspace, «файловая система в пользовательском пространстве»). Из недостатков ntfs-3g можно отметить невысокую производительность по сравнению с оригинальным драйвером для Windows и отсуствие обновлений с 2017 г.
В операционной системе Apple macOS встроенный драйвер NTFS по умолчанию работает в режиме чтения. После выпуска версии Snow Leopard была найдена возможность включения экспериментальной поддержки записи на NTFS, которую можно активировать через терминал. Однако она может работать нестабильно и приводить к различным проблемам.
Пользователям macOS также доступны коммерческие решения по поддержке NTFS, в том числе и разработка Paragon Software – Microsoft NTFS for Mac, и все тот же ntfs-3g, установка и настройка которого для рядового пользователя может стать нетривиальной задачей.
Компания Paragon Software была основана в 1994 г. студентами и выпускниками Московского физико-технического института (МФТИ), преимущественно вышедшими из компании «Физтехсофт». Первыми двумя продуктами фирмы стали Paragon DOS и Paragon BootManager. В дальнейшем к ним добавилось ПО для карманных компьютеров – компания начала с локализации популярного тогда PDA Newton и с технологии распознавания рукописного ввода Penreader.
Сегодня одним из приоритетных направлений компании является создание программных решений для управления жесткими дисками, распределения и защиты данных. Офисы группы расположены в США, Китае, Японии, Польше и России, головной офис – в немецком городе Фрайбург-им-Брайсгау.
Paragon Software сотрудничала с Microsoft, в том числе по вопросу разработки закрытых коммерческих версий драйверов файловых систем, права на которые принадлежат корпорации из Редмонда. Например, в начале 2017 г. россияне выпустили Paragon exFAT для Android – первую на рынке потребительскую версию файловой системы для беспрепятственного обмена данными между внешними носителями объемом более 32 ГБ и устройствами на базе Android – операционной системой, основанной на Linux.
В октябре 2019 г. Paragon Software представила Linux-сообществу собственную реализацию драйвера файловой системы exFAT, предназначенной для флеш-накопителей. На тот момент драйвер работал в режиме только чтения, но в разработке находилась версия, поддерживающая режим записи.
В январе 2020 г. южнокорейская корпорация Samsung предложила собственную реализацию exFAT. Именно в ее пользу впоследствии сделали выбор разработчики Linux.
Источник: cnews.ru
Лицензия: CC BY-SA 4.0
Благодарность автору!