NTFS-3G
NTFS-3G — это свободный драйвер файловой системы NTFS. Проект стабилен при работе с любыми NTFS-разделами (включая запись), имеет большое и активное сообщество разработчиков и лицензируется под GNU General Public License. Однако для Mac OS X драйвер не является свободным и требуется покупка лицензии.
NTFS-3G | |
---|---|
Тип | драйвер файловой системы |
Разработчик | Саболч Сакачич и другие |
Написана на | Си |
Операционная система | кроссплатформенное ПО |
Последняя версия |
|
Лицензия | GNU GPL v2 |
Сайт | tuxera.com/community/ope… |
На данный момент заявлена работа в следующих ОС: Linux (доступны сборки как для 32-битных процессоров, так и для 64-битных), FreeBSD, NetBSD, Solaris, Mac OS X, BeOS и Haiku.
Разработку начал Саболч Сакачич в июле 2006 года, первый релиз состоялся 21 февраля 2007 года — версия 1.0.
Преимущества
В противоположность драйверу NTFS, включённому в само ядро Linux[2], NTFS-3G поддерживает больше операций с файлами: файлы любого размера могут быть созданы, изменены, переименованы, перемещены или удалены с разделов NTFS, исключая сжатые и зашифрованные файлы. Имеется экспериментальная поддержка изменения списков контроля доступа и прав доступа файловой системы.[3] Разделы NTFS монтируются, используя Filesystem in Userspace (FUSE) в структуру пользовательского пространства FHS.
Недостатки
NTFS-3G поддерживает различные правила относительно имен файлов (DOS, Windows, POSIX), однако в целях совместимости по умолчанию включен режим совместимости POSIX[4]. Это означает что в качестве имени файла допустимы любые символы (в том числе запрещенные в оригинальной NTFS *
, :
, ?
, "
) за исключением /
(слэш) и \0
(ноль-символ). Например:
- Работая под Linux, можно создать файл с именем
report:next.txt
и сохранить его на NTFS-разделе (например флеш-диске). - Далее при работе под Windows этот же файл
report:next.txt
будет невозможно ни открыть, ни изменить, ни даже переименовать (так как имя файла содержит запрещенные символы)[5].
Чтобы драйвер NTFS-3G поддерживал ограничения имен файлов оригинальной NTFS (и тем самым гарантировать открытие в Windows сохраненного в Linux файла), необходимо принудительно включить опцию windows_names
, например при монтировании раздела[6]:
UUID=xxx /media/yyy ntfs-3g defaults,windows_names,locale=en_US.utf8 0 0
Производительность
Тесты показывают, что NTFS-3G ещё не оптимизирован на производительность. Главная цель разработчиков — обеспечить надёжность работы и задействовать для работы все функциональные возможности POSIX.
История
- 31 октября 2006 года — NTFS-3G становится самостоятельным проектом и больше не является частью проекта Linux-NTFS.
- 21 февраля 2007 года — Саболч Сакачич объявил в списке рассылки: «Вышел релиз первого открытого, свободно распространяемого, стабильного на чтении/записи NTFS драйвера, NTFS-3G 1.0».
- 5 октября 2009 года — выпуск проприетарной версии драйвера NTFS-3G для Mac OS.[7]
- 12 апреля 2011 года — объединение проекта Ntfsprogs с NTFS-3G.[8]
Примечания
- https://github.com/tuxera/ntfs-3g/releases/tag/2021.8.22
- LXR linux/fs/Kconfig
- NTFS-3G: Bad access to Advanced Branch
- Архивированная копия (недоступная ссылка). Дата обращения: 1 октября 2017. Архивировано 17 сентября 2017 года.
- Bug #230906 “Using special characters in filenames prevents Wind...” : Bugs : ntfs-3g package : Ubuntu
- MountingWindowsPartitions - Community Help Wiki
- NTFS-3G for Mac OS X is now Tuxera NTFS for Mac
- Release: NTFS-3G + NTFSPROGS 2011.4.12 (недоступная ссылка). Дата обращения: 26 апреля 2018. Архивировано 9 сентября 2014 года.
См. также
- NTFS
- ntfsprogs
- Captive NTFS