LINUX.ORG.RU

Линус Торвальдс одобрил добавление драйвера NTFSv3 в ядро

 , , , ,


0

2

Линус Торвальдс одобрил добавление драйвера NTFSv3 от Paragon Software в ядро Linux. В отличие от наиболее часто используемого для работы с NTFS в Linux FUSE-драйвера NTFS-3G, NTFSv3 работает в пространстве ядра и, в отличие от поставляемого в составе Linux старого драйвера NTFS, способен производить запись файлов на диск.

Разработчики из Paragon пообещали в дальнейшем продолжить поддержку нового драйвера:

This patch adds NTFS Read-Write driver to fs/ntfs3.

Having decades of expertise in commercial file systems development and huge test coverage, we at Paragon Software GmbH want to make our contribution to the Open Source Community by providing implementation of NTFS Read-Write driver for the Linux Kernel.

This is fully functional NTFS Read-Write driver. Current version works with NTFS (including v3.1) and normal/compressed/sparse files and supports journal replaying.

We plan to support this version after the codebase once merged, and add new features and fix bugs. For example, full journaling support over JBD will be added in later updates

>>> Подробности

★★

Проверено: a1batross ()

Вопрос знатокам

Всегда интересовала одна вещь. Обычно для полноценной работы с ФС помимо драйвера ядра ещё нужен набор утилит, правильно ведь? А где можно найти утилиты для NTFS3? Или их нет?

sudopacman ★★★★★ ()
Последнее исправление: sudopacman (всего исправлений: 1)

Вот вспоминаю я выступления штульиана, еще лет 10 назад. Поедая ногти он аедь слово в слово говорил то, что сейчас происходит. Но было много молодых и веселых, кто не воспринимал эти темы сурьезно. А лишь троллировали старичка. А воно как оно все повернулось в итоге.

А еще помню, как весело многие любили скандировать: бсди рип, протухло, закопайте…вот это вот все. Но выходит так, что слоупочность бсдей станет спасением. Ибо альтернатив то и нет. Скрепной РусОС так и не подвезли. ReactOS вот вот, но все еще никак.

Но я не призываю к переходу. Наоборот. Если случится массовый исход пингвинофилов, полноценную ОС постигнет та же участь. Не нужно.

anonymous ()
Ответ на: комментарий от hobbit

А ты уверен про безупречно?

Возьми папку с картинками и скопируй на другой раздел с ntfs при помощи драйвера от tuxera (ntfs-3g).

Потом сравни их побайтово. И узрей, что ntfs-3g определяет целостность файла по mime. И обрезает картинку, оставляя само изображение, но удаляя теги из конца файла.

То есть судит о конце файла не только по записи в таблице, но и проверяет себя по отлупу mime, который скажет, что картинка целая и хватит.

Скопированные картинки будут содержать те же растровые данные, но будут меньше по весу. У меня даже образцы есть до и после, могу скинуть.

По этой же причине некоторые битые картинки с ntfs-3g не скопировать. Ошибка чтения stream read error. Он начинает копировать, но mime ему говорит, что данные битые и он их не копирует. Хотя само изображение действительно битое (отображается с ошибками), но файл с ним в рамках ФС целый и раздел исправен.

А ещё я ловлю с ntfs-3g ошибки в последних байтах некоторых (часто одних и тех же) файлов. Картинок jpg и png, видосиков, образов и прочих. Есть даже один exe-шник, который даже работает после этого. Хотя например с архивами или офисными форматами я проблем не помню.

Все кому рассказывал о проблеме ищут железные причины. Грешат на оперативку .. Но я гонял тесты памяти, и ловил это на разных своих устройствах. А восстановленные из бэкапа целостные файлы через время снова портятся. ИЧСХ часто бьются одни и те же файлы. Как будто именно они не «нравятся» драйверу или mime.

Я это долго не замечал сам, ошибок ФС нет. Но попытка настроить автоматическую синхронизацию некоторых папок несколько лет назад открыла мне на это глаза. Вроде бы внешне одинаковые папки на разных устройствах оказались с кучей разных файлов. Где-то битых в конце, где-то нет.

Теперь я сверяю иногда всё побайтово и умею проверять целостность картинок, видео и прочего с imagemagick и ffmpeg. И битые данные теперь только с ntfs идут.

Я по этой причине много разделов для дуалбута перевёл на exfat. И проблема с данным на них исчезла! Пару лет уже как всё целое!

Ну кроме раздела с виндой. Который вынужденно остался на ntfs. На другое она не встанет. Там появляется периодически. Конкретно в моей папочке с портативным софтом.

Только причин выловить не могу, размонтируется нормально, данные эти не трогаю специально (не читаю и не пишу туда). Но в ходе очередного побайтового сравнения папок с бэкапом под виндой, вижу снова различия в последних байтах файлов. Если сидеть на одной винде, проблема не появляется. Я даже ради теста сидел под ней пару недель.

И да, с драйвером от парагона таких проблем вообще нет. Я на нём уже с полгодика. А недавно ставил другой дистр, где этого драйвера в репах нет, посидел денёк на нём и вернулся назад на старый дистр и снова огрёб проблемы эти, так как тестируемый дистр подключал этот раздел по ntfs-3g.

Потому жду свежее ядро с этим патчем. Чтобы этот говнянный ntfs-3g пропал со временем из дистрибутивов как страшный сон!

GenuZ ()
Ответ на: комментарий от anonymous

дженту возродит проект джентубсд. А девуан разовьет кфрибсд

Сейчас активно пилится ОС HyperbolaBSD, в которой будет использован пакетный менеджер Pacman.

Она может стать первой операционной системой семейства GNU с ядром kOpenBSD от FSF.

Papant ()
Последнее исправление: Papant (всего исправлений: 3)
Ответ на: комментарий от iZEN

ну ксли от 7ки, то не так все похо, что касается прям необходимости - ячет не вижу для себя её кроме как ну быстрее чтение и запись будут+ сломают кому-то веники в первые пару месяцев…

dengolius ()
Ответ на: комментарий от iZEN

В Windows 10/11 другая версия NTFS.

Э-э-э-э… И что там изменилось? Вроде и в 7, и в 10 та же древняя ntfs3.1. Если действительно что-то перелопачивали хотелось бы почитать детальнее(багфиксы не интересны).

На мой взгляд мелкософт уже давно забил на ОС как таковую - только рожу перерисовывает. FS, планировщик, менеджер памяти - не развиваются.

drfaust ★★★★★ ()
Ответ на: комментарий от drfaust

На мой взгляд мелкософт уже давно забил на ОС как таковую - только рожу перерисовывает

Вот-вот. Я это ещё понял, когда они предложили бесплатно с 7 до 10 обновляться.

fernandos ★★★ ()
Ответ на: комментарий от Twissel

Всю жизнь хватало ntfs-3g, ЧЯДНТ?

Друзей незадротов у тебя нет, вот что ты делаешь не так. А если бы были, пришёл бы к тебе такой с просьбой записать ему на флешку новый сериал, например. Флешка у него хорошая, подешёвке купленная. И вот при попытке записать на и так небыструю usb2 флешку в нтфс ты бы узнал, что такое драйвер нтфс в юзерспейсе. Поматерился бы, переформатировал в FAT, скорость бы увеличеслась, но фильм больше 2х гигов не записался бы.

khrundel ★★★ ()
Ответ на: комментарий от Toxo2

Я же описал в самом начале комментария. Ну да ладно, давайте опишу подробнее.

  1. Заготавливаете сет с картинками. Лучше разными, накачанными из сети. Чтобы там были разные форматы. И были какие-нибудь теги в картинках. Чтобы были созданы и сохранены разным софтом. Годами собираемая папка с мемасиками подойдёт.

  2. Для расширения эксперимента добавьте в сет заведомо «порченные» картинки. Не мусор с расширением jpeg, а именно картинки, которые подпорченные. Можете взять недокачанные файлы или ручками обрезать куски в середине, обрезать конец у некоторых файлов, заменить части файла в hex-редакторе мусором. Чтобы заголовок jpeg остался, а картинка была битой и показывалась просмотрщиками с артефактами.

  3. Копируете картинки под виндой на ntfs-раздел.

  4. Грузитесь в Linux и подключаете ntfs-раздел через ntfs-3g

  5. Копируете папку с картинками из-под Linux с ntfs-раздела на флешку или другой раздел. Лучше тот, который нативно поддерживается виндой. exfat или fat32. На этой стадии битые картинки очень вероятно не скопируются с ошибкой stream read error в консоли.

  6. Перезагружаетесь в винду и оттуда побайтово сравниваете файлы оригинального сета на ntfs-разделе и файлы, которые скопировали через ntfs-3g. Визуально некоторые файлы будут меньше размером, будут бинарно отличаться от оригиналов. Но само изображение (картинка, растровые данные) будет идентично.

Я проверял при помощи BeyondCompare. Он сначала покажет различия, в т.ч. и в hex-просмотре. А потом если открыть сравнение картинок - покажет их идентичность как изображений.

По ссылке сет с картинками «до» и «после» копирования через драйвер ntfs-3g. На раздел назначения при копировании вместо оригинала скопировались (без ошибок) файлы меньшего размера. https://disk.yandex.ru/d/s04Npfc6m1ewGw (осторожно, на фото голая девушка)

И они как изображения (растровые данные) идентичны, но бинарно не совместимы как файлы. И все проходят тесты целостности.

GenuZ ()
Последнее исправление: GenuZ (всего исправлений: 1)
Ответ на: комментарий от Toxo2

Звучит невероятно

Тоже с подобным поведением сталкивался. У некоторых TIFF файлов пропадала часть информации.
Сейчас сразу не вспомню, где-то прочитал про упоминание «скрытых возможностей NTFS, оставленных корпорацией Microsoft на будущее».
И тогда проведя аналогию с ситуацией открытия word-овских документов в LibreOffice зарёкся ставить на выносные диски эту файловую систему

kolja ★★ ()
Ответ на: Вопрос знатокам от sudopacman

На сайте у них написано про дополнительные утилиты

Будут, как и раньше, продавать? (обсуждение на opennet-e)

greenman ★★★★★ ()
Последнее исправление: greenman (всего исправлений: 2)
Ответ на: комментарий от GenuZ

Спасибо.
Ваш архив забрал, исходники 2017.3.23-5 забрал.
Вечером поиграю.

Последний вопрос: что вы имеете в виду под «копировать»? Каким инструментом надо копировать? (Просто первое что приходит в голову - это причуды именно инструмента, которым вы работаете с файлами, а не самой ФС).

Toxo2 ★★ ()
Ответ на: комментарий от Legioner

Серьёзный подарок сообществу. Можно только сказать спасибо.

гм. обожаю такие коменты. за историей не следил, причин не знает, но высказывает свое уважительное мнение. не пришло в голову, почему это случилось? их вынудили. это вынужденный шаг.

crypt ★★★★★ ()
Ответ на: комментарий от GenuZ

Я же описал в самом начале комментария. Ну да ладно, давайте опишу подробнее. Копируете картинки под виндой на ntfs-раздел.

Уверены, что те тэги и т.п. хранились в самих файлах, а не в потоках NTFS? Напоминаю, NTFS умеет несколько потоков данных в одном файле. Разумеется, при копировании на ext4 (да и любую другую невиндовую ФС) эти потоки не скопируются.

redeyedanonymous ()
Ответ на: комментарий от greenman

Ты не там читаешь их сайт. https://www.paragon-software.com/home/ntfs3-driver-faq/

Are you planning to add any decent filesystem utilities? The existing alternatives such as fsck.NTFS/NTFSck and fsck.(v)fat don’t work well, and the community has been waiting for a fix.

Yes, we plan to publish and open-source our mkfs.NTFS utility. We may also open-source rapidcopyfile and backup utilities for NTFS once mkfs has been published.

GenuZ ()
Ответ на: комментарий от Toxo2

Копируйте чем хотите. Ведь читать раздел ntfs он будет всё равно через fuse-драйвер ntfs-3g.

А так, у меня бились данные, которые я с того раздела смонтированного под Linux вообще не трогал (виндовый портативный софт).

GenuZ ()
Последнее исправление: GenuZ (всего исправлений: 1)
Ответ на: комментарий от crypt

Is there a difference between NTFS3 and “Microsoft NTFS for Linux by Paragon Software”?

As already stated previously (FAQ3), NTFS3 is a standalone NTFS implementation written from scratch in 4 months. NTFS3 has a GPL-2.0 license, while Microsoft NTFS for Linux by Paragon Software has a proprietary license. Microsoft NTFS for Linux by Paragon Software, in addition to some features (ugm, fifo, socket, char dev, etc.), also includes support (regarding any performance issues) and utilities (chkNTFS and mkNTFS). We believe both we and the community will benefit from this contribution in the long term.

I am an OEM and need to have NTFS read/write support in my product running Linux. Which version of Paragon’s NTFS shall I use – an open source NTFS implementation committed by Paragon into a Linux Kernel or Paragon’s proprietary code?

The decision is up to you. Both implementations are equally good from a technical perspective. However, proprietary code usually comes with support, which assures that any type of complication you might encounter is address by a team with over two decades of experience. It’s worth mentioning that kernel implementation of file systems is a complicated subject. Neither Linux, nor MacOS were able to provide stable NTFS write support at a kernel level for decades. This is mainly due to the fact that this requires a very sophisticated testing environment to ensure that data loss bugs are eliminated when changes are introduced to a system. Paragon’s Linux Kernel implementation of NTFS complies with Paragon’s internal test requirements, but we’re unable to provide instant testing of the code once it’s accepted to a Linux Kernel and altered further by community. Another aspect is fine tuning of the performance of a specific device. Cell phone or action camera running Linux and accessing NTFS media have different performance, power, footprint and memory requirements comparing to a server or desktop running Linux. This sort of fine tuning can make a huge difference to a final configuration. If you feel you’re skilled enough to do tests and/or tuning yourself – you’re more than welcome to use the open source implementation. Yet another aspect is that any changes implemented to a kernel support of NTFS will need to be published, if distributed further with your hardware, according to requirements of GPL license. In many cases, OEM manufactures are unwilling to do this for a variety of reasons, and this leaves them with an option to use Paragon’s proprietary code, which comes under commercial license. All of the above is true for exFAT as well.

GenuZ ()
Ответ на: комментарий от khrundel

Поматерился бы, переформатировал в FAT, скорость бы увеличеслась, но фильм больше 2х гигов не записался бы.

виндузятники такие сказочники

Линус Торвальдс одобрил добавление драйвера NTFSv3 в ядро (комментарий)

anonymous ()
Ответ на: комментарий от crypt

Че не ясного парагон падла прибежал на все готовое когда уже gparted да gdisk утилита есть , он как и маикрософт впрочем как и куколды режима не отставивает первичного изобретателя и латает дыры такими способами в итоге потом все что в линуксе сгенерилось будет принадлежать парагону щас выкатят типа архив .zst сделают из него раздел и патент себе присвоят скринь

anonymous ()
Ответ на: комментарий от hobbit

О чём? «Дяденька у вас сломался автобус?»

Я не могу выловить причину этих ошибок. Сначала я их вообще не замечал. Потом когда syncthing «просинхронизировал» мне кучу отличий в папках, я охренел и стал разбираться… Винил ntfs как таковой. Типа говняная ФС. К ней есть замечания.

Например chkdsk когда видит ошибки, заполняет часть файлов символом с буквой «Я» (ну или похожим юникодом). Оставляя дату и размер файла таким же. Поэтому при первых побайтовых сверках я обнаруживал и эти куски с «ЯЯЯЯЯЯЯЯЯЯЯЯ» посреди файлов.

Я перешёл на exfat и проблема с ценными данными решилась сама собой. Они перестали биться. Оставался раздел с виндой и софтом для винды. И там проблема продолжала проявляться… О том, что это косяк с ntfs-3g я окончательно понял, когда перешёл на парагоновский ntfs3 и проблема пропала.

Я понятия не имею КАК отловить эту ошибку и как её зарепортить с моими исходными данными. Чем фиксировать изменения в ФС под linux, как вылавливать проблему, появляющуюся просто при монтировании этого раздела драйвером ntfs-3g (даже без изменения/записи конкретных данных, которые потом бьются).

Тем более, что все попытки обсудить это в сети наталкиваются на «купи себе не битую оперативку».

Ну и да, мне реально теперь похер на ntfs-3g и его проблемы, раз в следующее ядро включат нормальный драйвер, которым я и так уже пользуюсь полгода, собирая его из AUR как модуль ядра.

GenuZ ()
Ответ на: комментарий от anonymous

Тут речь не за борцунство , а предательство изначальной идеологии первичности генерации и изобретательства скоро уже никто ни какой информации верить не будет и все книги сожгут по скольку там лже информация как и все кукольдное должно быть сожжено не еретиками

anonymous ()

Может это и хорошо, но что теперь будет в роллингдистрах и ДЕ? Вспоминаются времена болезненного введения ntfs-3g, когда он в системе был, но не использовался для флэшек всяких, потому что ввести ввели, а у ДЕ были свои взгляды на это дело. И как это всё разнилось от дистра к дистру, как на Дебьяне вообще надо было разрешать монтировать ntfsы... Бррр... Не хочу опять проходить через это. А с учётом неисправленных проблем для моего лаптопа в ядрах выше 5.10 мне придётся сидеть на нём и новых кедах и что это будет в итоге? Я смогу пользоваться безболезненно ntfs-3g, или опять надо будет колдовать?

R_He_Po6oT ()

И там прям все фичи работают и производительность со стабильностью на высоте? А MS чего говорит? А то ведь можно ее и дефолтной в установщиках сделать, она хорошая.

thesis ★★★★★ ()

Ну и хорошо, надо будет как-нибудь при обновлении ядра добавить в конфиг. Единственный момент да, когда его будет софт использовать для автомонтирования, thunar например.

sehellion ★★★★★ ()
Ответ на: комментарий от R_He_Po6oT

Собираешь ntfs3. Удаляешь ntfs-3g и профит. Монтировать с указанием, что это тип ФС «ntfs3».

Для верности можно ещё и в правила udev прописать:

SUBSYSTEM==«block», ENV{ID_FS_TYPE}==«ntfs», ENV{ID_FS_TYPE}=«ntfs3»

Ну и до кучи ещё и в udisks2 в /etc/udisks2/mount_options.conf в секцию [defaults]:

ntfs3_defaults=uid=$UID,gid=$GID,noatime,prealloc ntfs3_allow=uid=$UID,gid=$GID,umask,dmask,fmask,nls,nohidden,sys_immutable,discard,force,sparse,showmeta,prealloc,no_acs_rules,acl

GenuZ ()