Skip to main content

MacOS от Apple предоставляет способ подключения и доступа к томам хранения, используемым другими операционными системами на вашем рабочем столе. Вот как начать.

Ваш Mac может читать аудио компакт-диски или большинство USB-накопителей, предварительно отформатированных для Windows. Mac на протяжении десятилетий поддерживает иностранные файловые системы с архитектурой подключаемых модулей, которая позволяет macOS монтировать, читать и, в некоторых случаях, записывать в и из томов хранилища, отформатированных для других компьютеров.

Он также поддерживает монтирование некоторых удаленных сетевых томов на рабочем столе, как если бы они были дисками.

Все это возможно благодаря подключаемым модулям внешней файловой системы Mac. Каждый плагин находится между собственными программными интерфейсами файлового ввода-вывода (API) macOS и фактическим низкоуровневым кодом ввода-вывода устройства. Когда к тому хранилища отправляется запрос ввода-вывода, macOS сначала проверяет формат тома.

Если это формат, который macOS понимает изначально, он просто завершает ввод-вывод. Но если том отформатирован с использованием файловой системы, которую macOS изначально не понимает, она ищет подключаемый модуль внешней файловой системы (FFS) и, если находит совпадение, перенаправляет запрос ввода-вывода в подключаемый модуль FFS.

Затем код подключаемого модуля берет на себя и обрабатывает запрос ввода-вывода — упорядочивая данные в или из тома хранилища в соответствии с запросом.

В macOS может поддерживаться любое количество файловых систем, если для каждого внешнего формата тома имеется соответствующий подключаемый модуль. На самом деле macOS даже не нужно знать много подробностей о форматах иностранных томов — каждый плагин FFS выполняет большую часть работы. macOS просто говорит: «Вот, прочитайте данные в этом месте и верните их мне» или «Вот, напишите эти данные и вернитесь ко мне с подтверждением».

Эта архитектура подключаемых модулей позволяет легко расширять поддержку FFS в будущем для поддержки большего количества форматов и позволяет обновлять файловые системы независимо от операционной системы в целом. Блестящий.

Встроенная поддержка FFS

Начиная с macOS 13 Ventura, macOS поддерживает большинство форматов Windows FAT, тома Windows NTFS в режиме только для чтения, формат компакт-диска ISO 9660, DVD (UDF), Blu-Ray, другие оптические стандарты ISO и более старые форматы Mac OS десятилетней давности. например, HFS Plus, используемый для MacOS Extended.

Плагины для macOS FFS находятся в двух местах на загрузочном диске:

/Система/Библиотека/Файловые системы /Библиотека/Файловые системы

Если вы заглянете внутрь этих двух папок, вы увидите пакеты кода, каждый с расширением файла «.fs». Удаление или установка нового допустимого пакета .fs в любом из этих расположений, а затем выход из системы и повторный вход в нее дадут macOS доступ ко всем томам, для поддержки которых предназначен новый пакет .fs.

В общем, вы не хотите связываться ни с чем в /System/Library/Filesystems. Этот каталог используется системой, и его изменение может привести к ошибкам, сбоям или даже повреждению данных.

Любые новые подключаемые модули FFS, которые вы добавляете, должны быть добавлены в /Library/Filesystems.

Сетевые файловые системы

Также внутри обеих папок есть подпапка с именем «NetFSPlugins». Эта папка содержит пакеты .fs, которые знают, как подключаться, монтировать, размонтировать и читать + записывать на удаленный сетевой сервер, как если бы это был сетевой том на рабочем столе.

Например, если вы заглянете внутрь /System/Library/Filesystems/NetFSPlugins, вы найдете пакеты .fs для FTP, HTTP, общих ресурсов Windows SMB, NFS, WebDAV и других. Каждый из сетевых пакетов .fs знает, как удаленно взаимодействовать с этими сетевыми протоколами для выполнения операций ввода-вывода.

Каждый сетевой пакет .fs также имитирует реальную файловую систему и «обманывает» Finder, заставляя думать, что каждый удаленный ресурс является устройством хранения, поэтому он может монтировать их как тома на рабочем столе Finder. После подключения вы можете дважды щелкнуть их, перетащить файлы на удаленный ресурс и обратно, перетащить файлы в корзину, размонтировать их и беспрепятственно выполнять другие задачи Finder — по всей сети.

Некоторые плагины FFS могут не поддерживать все задачи Finder, кроме базового ввода-вывода, но многие поддерживают. Некоторые, например, могут не позволять вам устанавливать теги Finder, изменять разрешения или отображать полную информацию в окнах Finder Get Info. Пакеты .fs только для чтения будут монтировать, читать и размонтировать тома FFS, но вы не сможете записывать в них.

Поскольку большинство пакетов .fs работают на уровне ядра ОС, они должны быть очень хорошо написаны, протестированы и надежны. Одна небольшая ошибка в пакете .fs может повредить весь том и сделать его непригодным для монтирования и восстановления.

Apple проделала замечательную работу, сделав механизм FFS в macOS чрезвычайно надежным, и почти не сообщалось о проблемах с повреждением данных.

Сторонние пакеты FFS

Система плагинов открыла возможность для третьих сторон писать и выпускать свои собственные решения FFS, и некоторые из них сделали именно это. Некоторые из них бесплатны, за некоторые нужно платить. К ним относятся, но не ограничиваются:

Большинство из них включают установщик, который можно запустить для автоматической установки пакетов .fs в нужное место. Некоторые не включают установщиков.

MacFUSE: файловые системы на уровне пользователя

В 2009 году Амит Сингх выпустил MacFUSE — расширение пространства пользователя для файлов Mac. Идея MacFUSE заключается в том, что после установки сторонние файловые системы теперь могут быть записаны в пространстве пользователя, а не в ядре.

Теоретически это значительно упрощает их написание и тестирование, поскольку ошибка в файловой системе MacFUSE не приведет к остановке всей системы, как это произойдет при ошибочной FFS на уровне ядра.

Затем последовало множество подключаемых модулей macOS FFS MacFUSE, в том числе один для файловой системы Google (GFS), Linux (дополнительно) и других. MacFUSE не обновлялся более 10 лет, но по-прежнему работает с большинством подключаемых модулей FFS в macOS 13 Ventura на компьютерах с процессорами Intel. Ваш пробег может отличаться.

Одной из FFS для macOS на основе FUSE является TabFS от Омара Ризвана. После установки TabFS позволяет вам монтировать все открытые вкладки браузера в папку на рабочем столе и получать к ним доступ оттуда.

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