macFUSE + NTFS-3G

Бесплатно
Открытый исходный код
Windows
macOS
Linux

Сайт: macfuse.github.io

macFUSE — программный пакет для операционной системы macOS, реализующий подсистему пользовательских файловых систем на основе концепции FUSE (Filesystem in Userspace). Он предоставляет интерфейс и набор библиотек, позволяющих разработчикам запускать файловые системы в пространстве пользователя, без модификации ядра операционной системы. Благодаря этому подходу появляется возможность подключать и использовать множество различных форматов хранилищ и сетевых протоколов в виде пользовательских модулей, которые работают через унифицированный API.

NTFS-3G — открытый драйвер файловой системы NTFS, реализованный поверх FUSE и адаптированный для macOS с использованием macFUSE. Основная цель NTFS-3G — обеспечить совместимый доступ к разделам с NTFS-разметкой (традиционно используемой в Windows) в среде macOS с поддержкой чтения и записи, прав доступа и сохранения метаданных при максимально возможной совместимости. В комбинации macFUSE + NTFS-3G пользователи получают возможность монтировать NTFS-разделы как пользовательские файловые системы, обходя ограничение системных драйверов и сохраняя безопасность благодаря изоляции в пространстве пользователя.

  • Поддержка пользовательских файловых систем: macFUSE предоставляет каркас для реализации файловых систем в пространстве пользователя, упрощая разработку и развёртывание модулей без вмешательства в ядро.
  • Доступ к NTFS-разделам: NTFS-3G реализует чтение и запись данных на разделах NTFS, включая операции создания, удаления и изменения файлов и каталогов.
  • Совместимость метаданных: Сохранение основных атрибутов файловой системы NTFS, таких как метки времени, права доступа и информация о владельце, в рамках поддерживаемых macOS механизмов.
  • Изоляция и безопасность: Рабочие процессы файловой системы выполняются в пространстве пользователя, что снижает риск нестабильности системы при ошибках драйвера по сравнению с кодом в ядре.
  • Кроссплатформенный подход: Решение основано на общей модели FUSE, что упрощает портирование и использование однотипных драйверов на разных Unix-подобных системах.
  • Конфигурируемость и расширяемость: Пользователи и администраторы могут настраивать параметры монтирования, права доступа и поведение кеширования в зависимости от задач и требований производительности.
  • Ограничения производительности: Поскольку операции проходят через уровень пространства пользователя и слои преобразования между macFUSE и NTFS-3G, возможен некоторый оверхед по сравнению с нативными ядровыми драйверами.
  • Соображения совместимости: В отдельных случаях могут возникать отличия в поддержке специфических функций NTFS (например, альтернативных потоков данных или некоторых атрибутов безопасности) в зависимости от версии и конфигурации реализации.
Подробнее