Skip to content

v2.0.0 — first public release / первый публичный релиз

Choose a tag to compare

@ArrivaRUS ArrivaRUS released this 12 Jun 20:35
· 3 commits to main since this release

🇷🇺 По-русски

Первый публичный релиз NTFS Mounter for macOS — полноценная запись на NTFS-диски на Apple Silicon без kernel extensions и понижения защиты системы.

Что умеет:

  • Автоматическое монтирование NTFS-дисков в режиме чтения-записи через несколько секунд после подключения (LaunchDaemon)
  • Приложение в строке меню: статус дисков ● RW / ○ RO, Eject по-дисково, Eject All, Open in Finder
  • CLI: ntfs-mount list / mount / unmount / eject / auto + машинный формат --porcelain
  • Автоматическое подавление паразитного FSKit-драйвера Apple (macOS Tahoe монтирует NTFS read-only параллельно и блокирует запись)
  • Зачистка зомби-процессов ntfs-3g при переподключении диска под новым device id
  • Безопасный eject: unmount FUSE-T → SIGTERM ntfs-3g → diskutil eject (в границах метки конкретного диска)
  • format-ntfs.sh — быстрое переформатирование повреждённого тома (с подтверждением)

Закалка версии 2.0 (по итогам полного аудита): исправлен eject не того диска при двух подключённых NTFS, скрытое включение errexit в mount all, падение обработчика ошибок под set -u, 60-секундная блокировка автомонтажа после eject+re-plug; eject-маркеры перенесены в root-owned каталог (защита от symlink-атаки); метки томов с пробелами больше не ломают парсинг; диагностика — под флагом NTFS_MOUNT_DEBUG=1; добавлен CI.

Документация: README.ru.md


🇬🇧 English

First public release of NTFS Mounter for macOS — full NTFS write support on Apple Silicon with no kernel extensions and no Reduced Security mode.

Features:

  • Automatic read/write mounting of NTFS drives seconds after plug-in (LaunchDaemon)
  • Menu-bar app: per-drive ● RW / ○ RO status, Eject, Eject All, Open in Finder
  • CLI: ntfs-mount list / mount / unmount / eject / auto + machine-readable --porcelain
  • Automatic suppression of Apple's parasitic FSKit NTFS driver (macOS Tahoe mounts NTFS read-only in parallel, blocking writes)
  • Zombie ntfs-3g cleanup when a drive re-appears under a new device id
  • Graceful eject: unmount FUSE-T mount → SIGTERM ntfs-3g → diskutil eject (scoped to the target disk's label)
  • format-ntfs.sh — quick YES-gated re-format for hopelessly corrupted volumes

2.0 hardening (after a full audit): fixed wrong-disk eject with two NTFS drives attached, hidden errexit re-enable in mount all, error-handler crash under set -u, 60-second automount lockout after eject + quick re-plug; eject markers moved to a root-owned directory (symlink-attack hardening); volume labels with spaces no longer break parsing; diagnostics gated behind NTFS_MOUNT_DEBUG=1; CI added.

Documentation: README.md

Tested on macOS 26 Tahoe / Apple Silicon.