Как Windows NTFS наконец превратилась в Linux °

    0
    89


    Мнение Нравится вам это или нет, но пользователи Linux в мире Windows должны иметь дело с файловой системой новой технологии Microsoft (NTFS). Это всегда было головной болью. Даже после того, как Microsoft, наконец, отказалась от своей анти-Linux риторики и передала свои патенты сообществу разработчиков ПО с открытым исходным кодом и выразительно открыла свои патенты exFAT, мы все еще не могли проникнуть в NTFS.

    Времена изменились. Начиная с ядра Linux 5.15, NTFS наконец-то полностью поддерживается в Linux. Это путешествие было нелегким.

    Microsoft представила NTFS, проприетарную – естественно – журналирующую файловую систему в Windows NT 3.1 в 1993 году. С этого момента она заменила файловую систему таблицы размещения файлов (FAT) 1977 года в Windows.

    То, что что-то является проприетарным, не означает, что разработчики Linux и с открытым исходным кодом не могут его перепроектировать или найти какой-либо способ его использования. Просто посмотрите, что команда Samba сделала за эти годы с Server Message Block (SMB) и ребятами из Wine, у которых есть множество приложений Windows для работы в семействе операционных систем * nix. Однако NTFS оказалось намного сложнее перенести.

    О, были способы работать с NTFS-дисками из Linux, но это было некрасиво. Ранее существовало два основных драйвера NTFS для Linux с открытым исходным кодом: NTFS-3G и драйвер Captive NTFS.

    NTFS-3G, который работает с файловой системой в пользовательском пространстве (FUSE), работает медленно, очень, очень медленно. В Linux он также может читать только из систем NTFS. На других системах * nix, например macOS, писать тоже можно, но, одним словом, некрасиво. Вы можете попробовать изменить размер раздела NTFS, но, как указано в программе Arch Linux: «Пожалуйста, убедитесь, что у вас есть резервная копия, прежде чем делать это, если ваши данные важны». Хммм… давайте не будем говорить, что сделали.

    Драйвер Captive NTFS мог читать и писать в NTFS. Однако для реализации этой уловки использовался оригинальный драйвер Windows ntfs.sys. Использование проприетарного драйвера в программном обеспечении с открытым исходным кодом всегда проблематично, особенно в те плохие старые времена. На самом деле проект продлился недолго. Сам код все еще существует, но сам проект давно мертв.

    Пока сообщество разработчиков ПО с открытым исходным кодом работало над этими проектами, компания Paragon придерживалась другого подхода. Его Microsoft NTFS для Linux от Paragon Software использовала проприетарную Paragon File System Link, кроссплатформенные драйверы файловой системы для чтения и записи с дисков NTFS. Название программы говорит само за себя. Paragon производит свое программное обеспечение в партнерстве с Microsoft.

    Результатом стала быстрая, эффективная и, да, проприетарная система NTFS Linux. Но, хотя Paragon годами преуспевал в этом бизнесе, Microsoft больше не была проприетарной электростанцией, какой была при Билле Гейтсе и Стиве Баллмере. Сегодня Microsoft осознала, что с открытым исходным кодом она ошиблась.

    Что было делать Paragon с Microsoft, выступающей за открытый исходный код? Что ж, сначала компания быстро вошла в первые три стадии горя: отрицание и изоляция, гнев и торг. В мае 2020 года он опубликовал статью под названием «Скрытая стоимость« бесплатного »exFAT, где вы можете увидеть все три этапа на дисплее.

    К сентябрю 2020 года Paragon перешла к заключительному этапу: принятию. Компания «предоставила Linux-сообществу драйвер ядра NTFS для чтения и записи под лицензией GPL, чтобы в свое время надеяться, что он будет включен в основное ядро.

    Это были прекрасные новости … кроме одной мелочи. Код NTFS3 никоим образом не был готов к добавлению в ядро. Это проблема проприетарного кода – и почему я цинично отношусь к идее о том, что Microsoft может просто открыть исходный код, скажем, для всей Windows 7, – она ​​часто плохо написана. В отличие от программ с открытым исходным кодом, где все могут видеть вашу работу, несвободные программы могут скрывать свои грехи от наблюдателей.

    Во-первых, код из 27 000 строк был слишком большим. Разработчик ядра Linux Николай Борисов написал: «Итак, как именно вы ожидаете, что кто-то рассмотрит это чудовище?»

    Хороший вопрос. Ответ: вы не можете.

    Кроме того, как сказал Линус Торвальдс, было бы неплохо, если бы Paragon, знаете ли, «действительно представил это».

    Было бы слишком много просить о «Идеале»? [to] просто сделайте для него запрос на перенос с помощью git “?

    Paragon, что неудивительно, не знал, как работать с электронной почтой ядра Linux и рабочим процессом, управляемым Git. Mea culpa, Paragon согласился, что он «будет поддерживать эту реализацию», но что «нам понадобится несколько дней, чтобы подготовить правильный запрос на перенос перед отправкой его вам».

    Торвальдс был рад услышать это, но он предостерег разработчиков Paragon: «Еще одна вещь, которую я действительно хочу, когда появляются такие большие новые части, как эта, – это просить вас убедиться, что все подписано должным образом, и что есть Это не внутренняя путаница по поводу GPLv2 внутри Paragon, и что все юридические лица и т. д. все знают обо всем этом и находятся на ее борту. Последнее, что мы хотим видеть, – это некоторые «Ой, мы не хотели этого делать» шумиха шесть месяцев спустя “.

    Более года спустя у них не было битвы за GPL. Слава богу за маленькие чудеса. Но после долгого и беспорядочного процесса NTFS3, а значит, и NTFS, наконец, попали в кандидат на выпуск ядра Linux 5.15. Если все пойдет хорошо, вы можете ожидать, что это ядро ​​прибудет как раз к Хэллоуину. Не стесняйтесь шутить над документами Microsoft на Хэллоуин, если хотите, но с молчаливого благословения Microsoft NTFS, наконец, будет полностью и эффективно работать в Linux.

    Кто бы мог подумать об этом – даже пять лет назад после того, как Microsoft заявила, что любит Linux? Мы живем в интересные времена. ®

    Предыдущая статьяBanshee 900R в GTA Online: все, что вам нужно знать
    Следующая статьяКак получить промышленные схемы в Far Cry 6
    Виктор Попанов
    Эксперт тестовой лаборатории. Первый джойстик держал в руках в возрасте 3 лет. Первый компьютер, на котором „работал” был с процессором Intel i386DX-266. Тестирует оборудование для издания ITBusiness. Будь то анализ новейших гаджетов или устранение сложных неполадок, этот автор всегда готов к выполнению поставленной задачи. Его страсть к технологиям и приверженность качеству делают его бесценным помощником в любой команде.