Как включить поддержку записи NTFS в Mac OS X 10.7 Lion стандартными средствами
После установки Mac OS X 10.7 Lion Golden Master начал присматриваться к будущему рабочему окружению: что и как работает, что убрали, что добавили, что переместили. Это же практически то, что нас ожидает вот-вот-вот! Решил опробовать как обстоят дела с чтением/записью NTFS в Lion. Чтение, конечно же, и так работает, как говорят «из коробки», а я решил пошаманить с включением записи на NTFS разделы подручными средствами операционной системы «Лев». Решил этим делом заняться сам, и это дало положительный результат.
Методом научного тыка (народные методы не расписываются в мелочах) определил, что c бинариком mount_ntfs в папке /sbin всё впорядке, скрипт, который мы создаём, тоже работает как нужно. Оказалось, что всё дело крылось в самом драйвере (кексте) ntfs.kext, который находится в /System/Library/Extensions/. Немного поколупавшись в NTFS драйверах от Mac OS X 10.6.8 и от Mac OS X 10.7 GM обнаружил, что драйвера отличаются минимально, можно сказать только сборкой, но вот Lion’овскую лешили встроенной поддержки записи на NTFS разделы. Попробовал подсунуть бинарик кекста ntfs.kext из Snow Leopard в Lion, полечил права, перезагрузился… И всё заработало! Короче, инструкция:
Скачиваем
1) Чтоб не писать лишних sudo сразу говорим, что мы будем работать от лица администратора (root’а): sudo -s
и жмём Enter. На запрос пароля вводим пароль суперпользователя и снова жмём Enter.
2) Создаём резервную копию бинарика из ntfs.kext: mv /System/Library/Extensions/ntfs.kext/Contents/MacOS/ntfs \
/System/Library/Extensions/ntfs.kext/Contents/MacOS/ntfs_orig
3) Копируем бинарик драйвера ntfs.kext, вытянутый из Mac OS X 10.6.8 Snow Leopard, на место оригинального бинарика: cp ~/Desktop/NTFS_Enabler/ntfs \
/System/Library/Extensions/ntfs.kext/Contents/MacOS/ntfs
4) Назначаем ему правильные права и атрибуты: chown root:wheel /System/Library/Extensions/ntfs.kext/Contents/MacOS/ntfs;\
chmod 644 /System/Library/Extensions/ntfs.kext/Contents/MacOS/ntfs
5) Создаём резервную копию оригинального демона mount_ntfs: mv /sbin/mount_ntfs /sbin/mount_ntfs_orig
6) Теперь на место оригинального демона mount_ntfs помещаем скрипт-враппер, который будет «перехватывать» системные комманды и активировать ntfs.kext на чтение и запись: cp ~/Desktop/NTFS_Enabler/mount_ntfs /sbin/mount_ntfs
7) Скопированному скрипту назначаем правильные права и атрибуты: chown root:wheel /sbin/mount_ntfs; chmod 755 /sbin/mount_ntfs
8) Запускаем драйвер: kextload /System/Library/Extensions/ntfs.kext
При удачном запуске не должно быть ошибок.
9) Запускаем Дисковую утилиту и перемонтируем диски с файловой системой NTFS. Перезагружаться не нужно.
В архиве так же находится текстовый документ с командами построчно, так как движок блога мог поколбасить некоторые из них. После выполнения вышеперечисленных 9-ти шагов диски и разделы с файловой системой NTFS будут монтироваться на чтение и запись сразу, без каких-либо «прописок» в fstab и перезагрузок! Отключить запись на NTFS и вернуть всё обратно можно при помощи двух консольных команд (потребуется пароль администратора):
sudo mv /sbin/mount_ntfs_orig /sbin/mount_ntfs
потом sudo mv /System/Library/Extensions/ntfs.kext/Contents/MacOS/ntfs_orig \
/System/Library/Extensions/ntfs.kext/Contents/MacOS/ntfs
«Плюсы» и «Мниусы»:
Плюсы:
- Большая скорость записи, около 30 МБ/сек.
- При удалении файлов помещает их в корзину, а не удаляет перманентно.
Минусы:
- Если том «некорректно» отмонтирован из винды, то ругается в лог и монтирует read-only.
- Disk Utility не может создавать раздел типа NTFS.
- Ну, это всё-таки хак ;-)
Поэтому читателям такая рекомендация: по дефолту пользоваться нативным драйвером согласно этому методу. Но Держать NTFS-3G установленным, но выключенным (кнопка Disable/Enable в System Preferences) на случай если нужно примонтировать проблемный раздел или разметить диск. Так же от себя напомню, что всё опробовалось и работает начиная с Mac OS X Lion 10.7 Golden Master, до Mac OS X Lion 10.7.2 включительно.
Не используйте NTFS для хранения важных файлов при работе в Mac OS X; и наоборот, не используйте HFS+ для хранения важных файлов при работе в Windows. Не полагайтесь на сторонние решения, такие как Tuxera NTFS, Paragon NTFS или NTFS-3G. Используйте функцию записи на NTFS только для обмена файлами, потеря которых не критична, или если имеется их резервная копия.
Внимание! Из-за многочисленных нестыковок я создал небольшой пакет под названием NTFS Tools, который проделает всё вышеописанное автоматом.
Created/Updated: 25.05.2018