Файловая система в mac os. ExFAT - файловая система для Mac OS X и Linux. Домашняя директория пользователя

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

А зачем пользователю знание подробностей анатомии и физиологии его персонального помощника?

Самая худшая разновидность “экспертов” – нахватавшиеся верхушек дилетанты. Те, кто и в самом деле владел темой, Mac оценили по достоинству. Их не обманула скупая простота интерфейса, они нашли его очень продуманным, логичным и удобным. “Сегодня я увидел, какими будут компьютеры лет через пять”, – говорили они.

А вот “эксперты” пришли в недоумение: кому нужен этот пластиковый “говорящий” ящик, если в нем совершенно невозможно разобраться? Нет ни командной строки, ни текстовых файлов со скриптами или с настройками конфигурации. Ничего нет, вообще! Ну никак не заглянуть ему “в душу”!

Вскрыть корпус? На нем табличка: “Не вскрывать, внутри нет ничего интересного”. Кто-то все-таки вскрыл и, действительно, ничего интересного не нашел. Платы, микросхемы…

Интересно, что они надеялись там увидеть? Крошечного инопланетянина, прикованного к микроскопическому пульту управления, с миской сушеных инопланетных червяков?

Finder и файловая система

Оболочка операционной системы Mac’ов с её первого дня и до сих пор называется Finder. “Тот, кто что-то находит”. На границе 80-х и 90-х, когда объёмы дисковых хранилищ стали большими, возник анекдот: Finder that finds nothing (Finder, который ничего не находит), но в 1984 году, на дискете ёмкостью в 400 K спрятать что-то было нелегко.

Это классическое Mac’овское приложение, написанное Брюсом Хорном и Стивом Капсом. Брюс – гений и перфекционист, “псих-одиночка”. Работать с ним над одной задачей не мог никто и никогда. Но осенью 1983-го, когда до последнего и окончательного срока завершения проекта оставалось всего ничего, Finder “застрял”.

Стив Капс смог найти общий язык с Брюсом. Проблемы были абсолютно объективные, но вдвоем они справились. В декабре 1983 года Finder был готов к выходу в свет. В тот день разработчики Mac’а устроили “день Стива Капса” – все пришли одетыми, как одевался он.

По мнению журналистов, главной функцией Finder было управление файловой системой Mac’а. Добавим в это определение только одно слово: “Главной видимой функцией…”. Это реализация метафоры “рабочего стола”, с документами и инструментами для работы с ними.

Файловая система первого Mac’a называлась MFS (Macintosh File System). В ней не было иерархии директорий, она была “плоской”, как плохая шутка, но для дискеты ёмкостью в 400 килобайт, значительную часть которой съедала система, это было необходимо.

Директории (по Mac’овски – папки) в MFS на самом деле были иллюзией. Их было видно только в Finder. Ссылки на все объекты файловой системы хранились в одном невидимом файле небольшого размера.

Иерархическая файловая система (HFS) была написана намного раньше, но на время её убрали в архив. Вплоть до System 3.0 на Mac’ах использовалась только MFS.

На системной дискете изначально было две папки – System Folder и Empty Folder. В Empty Folder пользователь мог “убрать” свои документы и программы, как в ящик письменного стола. Взяв нужный файл и перетащив его в открытую или закрытую папку. Empty Folder можно было переименовать. И в момент завершения переименования случалось чудо: на рабочем столе немедленно появлялась новая пустая папка с названием Empty Folder.

Файловая система самого первого Mac’а называлась MFS (Macintosh File System), она была предназначена и оптимизирована под односторонние 3,5-дюймовые дискеты с ёмкостью в 400 килобайт, и над ней смеялись. Она была “плоская”. В ней были только “диск” (та самая дискета) и файлы. Иерархии директорий (папок, если по Mac’овски) не было.


При удалении Empty Folder (для этого её надо было перетащить в “урну” (Trash) и выбрать в меню Special команду “Empty Trash”. При опустошении урны уничтожалось всё, что было в ней, – пользователей приучали к мысли, что это невосстановимо. На самом деле, если с момента уничтожения этих файлов не создавалось новых, все еще можно было поправить, с помощью специального инструмента – правда, появился он, как мне кажется, в 1985-м.

Теоретически восстановить файл можно было с помощью 16-ричного редактора, вручную изменив содержимое невидимого списка файлов и папок, но это было за пределами добра и зла: требовалось найти потерянный файл, правильно привести его положение на диске в обозначение, понятное “невидимому файлу”, исправить информацию самого “невидимого файла” и нигде не ошибиться – иначе системная дискета переставала загружать систему. Отправленный в урну по ошибке (или ради эксперимента) файл можно было вернуть на место с помощью команды Put Back в меню File. Если “мусор еще не выносили”.

Имена файлов предназначались для пользователей, файловая система использовала для их идентификации уникальные идентификаторы файлов (числа). В именах файлов и папок можно было использовать абсолютно любые символы, кроме двоеточия.


MFS мог работать с именами файлов длиной до 255 символов, но Finder ограничивал полет фантазии пользователя жалкими 63. В одной из версий (в 3.0, кажется) длину имени файла еще раз ограничили, на этот раз 31 символом. Это ограничение дожило до 1998 года.

То есть, если “системный шрифт для вывода имен файлов в Finder” знал кириллицу, папка могла бы называться “Я. Избранное. За 1984..1987 годы”. А документы в ней, например, “Сказка про беглого бычка”.

Содержимое активного (выбранного) окна при желании можно было распечатать, один в один. Если был принтер. Или отправить по факсу – если был модем и программа отправки факсов.

MFS могла работать с дисковым пространством до 20 Мегабайт, или с 1400 файлами, во времена, когда единственным доступным хранилищем информации были односторонние дискеты ёмкостью в 400 К, эти ограничения были теоретическими.

Объекты файловой системы

Я в предыдущем разделе называл видимые пользователем объекты файловой системы словом “файл”. Это, с точки зрения дизайнеров (в хорошем смысле этого слова) Mac’а, грех. В системе Mac’а файлов не было, были только приложения, документы приложений и документы системы.

Метафора рабочего стола – это такая ролевая игра.

Центральным элементом этой игры были “документы”, двойным кликом по их иконке они открывались, и, если работающее с ними приложение еще не было запущено, открывали и его. (Вроде бы теперь положено “клик” называть “щелчком”, но мне этот термин не очень нравится).

Работу с приложением можно было начать двойным кликом по его иконке – если на диске не было документов нужного типа или если так было удобнее. Или если у приложения не было никаких документов в принципе (игра, 16-ричный редактор диска и тому подобное).

В ролевой игре не участвовали только системные документы, за небольшим исключением двойной клик по их иконкам не приводил ни к каким действиям. Их не стали прятать, и это хорошо. Вам приходилось устанавливать драйвер, например, принтера, в PC DOS? А вот на Mac’е весь процесс состоял в перетаскивании документа системы, например “Image Writer LQ”, в системную папку. Убрать принтер из числа работающих, не удаляя его ценный системный документ (драйвер), можно было, убрав его иконку из System Folder.

Откуда документы и приложения знали, какими иконками изображаться их на экране и как кого открывать? Ведь никаких расширений файлов в MFS не было. Если вы не знали о том, как это делается, но сами задались этим вопросом, я вами горжусь.

Текст хранится в компьютерах в виде последовательности чисел. В эпоху классических ОС каждый символ обозначался байтом, числом длиной в 8 бит. Заглавные и строчные буквы, знаки препинания, цифра, пробел и т. п. А еще – “непечатные” символы вроде “возврата строки”, “звукового сигнала”, “перехода на следующую строку” и им подобные. В наши дни используются значительно более разорительные кодировки, но я вам про них не расскажу.

Инженеры команды Macintosh придумали тип данных, OSType, значение которого было числом, но на экране отображалось как последовательность из 4 букв. OSType применялся в Mac’овской системе для мнемонического обозначения самых разных сущностей.

Тип файла отображался двумя атрибутами типа OSType, первый из которых обозначал его формат (Type Code), а второй (Creator Code), в случае, если файл – приложение, хранил мнемонику APPL, если документ – тип создавшего этот документ приложения. Это не все возможные варианты “создателя”, остальные (системные документы, драйверы и т. п.) нас не интересуют.

Каким бы образом видимый пользователю файл ни оказывался в хранилище MFS или HFS, система тут же заносила сведения о его атрибутах и иконке в специальный файл, не видимый пользователями. Двойной клик по документу включал алгоритм поиска создателя этого документа – приложение с типом файла, равным создателю файла. Если в пределах диска такого не было, искалось приложение, умеющее работать с этим типом документов.

Конфликты? Случались. Но гораздо реже, чем в PC DOS. На Mac’е тип файла обозначался восемью символами вместо трех в PC DOS. Заглавные и строчные буквы в Mac’овском обозначении типов файлов различались, и никто не запрещал использовать в качестве уникальных значений любые символы.

Многозадачность

Система первых Mac’ов не поддерживала . В любой момент на компьютере работала одна программа, или прикладная, или системная – то есть Finder.

Между тем, в процессе разработки Mac’а быстро обнаружилась потребность в утилитах, которые всегда под рукой. Калькулятор, будильник, карта текущей раскладки клавиатуры и много чего еще.

Решение было найдено. Назвали его Desktop Accessories, или DA’s. Аксессуары рабочего стола. По своей природе это были драйверы специального типа. Жили они в оперативной памяти, выделенной работающему приложению. Можно было запустить любое их число, но при этом запросто можно было нанести ущерб приютившему их приложению.

Доступ к DA’s осуществлялся из меню “Яблоко”, содержание которого не зависело от запущенного приложения. DA писали не только в Apple, но и сторонние разработчики.

Продолжение следует.

Структура каталогов Mac OS X и Windows Vista отличается коренным образом, что, впрочем, совершенно неудивительно - первая относится к UNIX-системам, вторая наследует принципы организации от Windows 2000 и более ранних версий, с сохранением определенной преемственности с DOS. Следует отметить, что Mac OS X, по крайней мере, на пользовательском уровне сильно отличается от стандарта FHS (). Более того, такие корневые каталоги, относящиеся к BSD-окружению, как /bin, /usr и прочие, в Finder"e, аналоге Проводника, так же, как и в прикладных программах, скрываются.

В Mac OS X корневой файловой системой становится та, которая соответствует загрузочному разделу. Все остальные разделы, включая находящиеся на сменных носителях, монтируются в /Volumes, под собственным именем, задаваемым в случае файловых систем FAT, NTFS меткой диска. Такой подход обеспечивает межмашинную унификацию - к какому бы компьютеру мы ни подключили, скажем, флеш-накопитель, у него будет один и тот же путь в структуре каталогов файловой системы. Это сильно облегчает создание переносимого рабочего окружения, включающего программы, настройки и документы пользователя. Второй неявный бонус в том, что стирается различие между реальными разделами и образами дисков - прикладные программы работают с последними в обычном режиме. Для полноценной имитации можно использовать формат образа, допускающий не только чтение, но и запись данных. Следует отметить, что пользователю нет необходимости задумываться о количестве подключенных носителей или образов.

В Windows Vista от более ранних версий унаследована концепция с обозначением разделов буквами латинского алфавита, загрузочный раздел получает букву «C» вне зависимости от того, есть ли в компьютере дисководы, за которыми во времена DOS резервировались «A» и «B». Каждый вновь подключенный носитель получает первую свободную букву (которые могут идти в не строгом порядке). В настройках Проводника можно установить параметр, позволяющий скрыть буквы дисков, но его действие распространяется только на стандартные диалоговые окна и Проводник, и то частично: так, в свойствах файлов и папок все равно показывается вся информация. Используя консоль управления, пользователь может либо поменять букву диска, либо задействовать штатную возможность файловой системы NTFS - примонтирование разделов в каталог. Строго говоря, поддерживается так называемая операция Directory Junction, позволяющая задать в роли объекта-источника не только раздел, но и отдельную папку диска, - но, к сожалению, недоступная через консоль управления. Использование букв диска, очевидно, порождает неоднозначность наименования разделов при подключении сменного носителя к разным компьютерам. Как следствие, при желании организовать переносимое рабочее окружение необходимо использовать либо программы, умеющие работать с относительными путями или абсолютными вида «» - корневой каталог текущего диска, либо специализированные адаптированные версии (в связи с этим представляет определенный интерес появление стандарта U3). Использование букв для наименования дисков также приводит к тому, что виртуальный привод, имитирующий реальный, в каждый конкретный момент времени ограничен одним подключенным образом, то есть нужно либо инсталлировать несколько таких эмуляторов, либо осуществлять «смену» образа.

Основные каталоги

В Mac OS X пользователь работает со следующими папками в корневом каталоге: Applications, как следует из названия, предназначена для прикладных программ; System - основные файлы операционной системы; Library - дополнительные файлы системы и прикладных программ, а также общесистемные настройки; Users - домашние каталоги пользователей, в которых, в свою очередь, могут находиться вложенные папки Library и Applications. Подобное деление позволяет четко разграничить права пользователей на доступ к отдельным объектам файловой системы: например, приложение не может осуществлять запись настроек вне пределов Library (либо системной, либо соответствующей у текущего пользователя), а пользовательских документов - куда-либо помимо домашнего каталога. Конечно, при желании (и при наличии соответствующих полномочий) пользователь может разместить приложение, например, на рабочем столе, а личные файлы - в /System, но в целом структура каталогов логична и достаточно хорошо сбалансирована для разграничения доступа на основе стандартной UNIX-схемы.

В Windows Vista также есть стандартные каталоги: Windows - назначение понятно из названия; Program Files служит для размещения прикладных программ; в ProgramData сохраняются глобальные настройки программ (аналог Documents and SettingsAll UsersApplication Data, а также ряда других папок в более старых версиях); Users предназначена для домашних каталогов пользователей. На последних нужно остановиться более подробно, так как изменился подход, он стал более приближен к тому, что используется в UNIX-системах: рабочие папки, предназначенные для документов, музыки, изображений и так далее, размещаются непосредственно в домашнем каталоге наравне со служебными каталогами, имеющими атрибут «скрытый». То есть структура стала более «плоской», без ветвления на дополнительные уровни иерархии. Основная проблема в Windows Vista связана со старыми программами, требующими соответствующих полномочий для записи настроек и временных и вспомогательных файлов в Program Files или Windows - многие из них создавались без учета возможности работы под учетной записью с существенно лимитированным доступом.

Возможности файловых систем

«Родной» для Mac OS X является файловая система Mac OS Extended, в некоторых источниках упоминаемая так же, как HFS+. В зависимости от выбранных при форматировании параметров может поддерживаться журналирование (вариант по-умолчанию при установке системы), а также использование регистрозависимых имен - при этом система будет различать объекты, находящиеся в одной папке и называющиеся практически одинаково за исключением регистра символов, например, «документ.pdf» и «Документ.pdf». Системный раздел также может быть отформатирован в файловую систему UFS (UNIX File System), но при этом, по утверждениям Apple, могут быть ограничения, связанные с работой отдельных подсистем операционной системы, в частности, беспроводного доступа. Поддерживаются также и иные файловые системы, в которые могут быть отформатированы не системные тома - FAT, FAT32 и NTFS в режиме только для чтения.

Для Windows основной файловой системой является NTFS, также поддерживающая журналирование и регистрозависимые имена. Впрочем, последняя возможность требует установки определенного параметра реестра и, естественно, поддержки на уровне прикладных программ. По вполне очевидным причинам, файловые системы Mac OS Extended и UFS не поддерживаются, но обеспечить переносимость данных в режиме не только чтения, но и записи, можно с помощью разделов, отформатированных в FAT.

В Mac OS X файлы состоят из двух компонент: так называемых, data fork и resource fork, в переводе на русский язык - вилки данных и ресурсов. Вилка ресурсов предназначена для сохранения вспомогательной информации, например, индивидуальной иконки файла. В некоторых случаях содержимое вилки ресурсов может быть основным - так, в ней может целиком содержаться файл шрифта. Что вполне естественно, файловая система HFS+ штатно поддерживает такое ветвление файлов, но что будет, например, при помещении такого файла на диск в FAT32? В таком случае формируется вспомогательный файл, имя которого начинается на «._», устанавливается атрибут «скрытый». При этом прикладные программы продолжают воспринимать файл так, как если бы он находился на диске с файловой системой HFS+.

Реализованный в NTFS механизм более гибок - каждый файл может иметь несколько произвольных файловых потоков, все они, за исключением основного, получают собственные имена. Когда пользователь обращается к файлу и не указывает дополнительное имя, то считается, что он работает именно с этим основным потоком. Файловые потоки поддерживались еще с самых первых версий NTFS и операционной системы Windows NT, но пользователь сталкивается с этой возможностью только при указании дополнительных атрибутов файла, таких как автор, название документа и так далее. Также в дополнительных потоках любит прятать свою сущность вредоносные программы - но это забота антивирусов и их производителей. И, как всегда при использовании «продвинутых» технологий, возникает вопрос совместимости, в частности, с файловой системой FAT. К сожалению, механизма сохранения дополнительных именованных файловых потоков не предусмотрено, разве что система (а, точнее, Проводник) предупредит о возможной потере информации при копировании или перемещении.

В каждой из операционных систем ограничения на допустимые в именах файлов символы, многие из этих ограничений вызваны историческими причинами и совместимостью с более ранними версиями операционных систем. Так, в Mac OS X для разделения имен каталогов используется «/», но в то же время в имени файла можно указать этот символ. Возникает вопрос - каким образом? На самом деле, в имени сохраняется двоеточие «:», которое и отображается в виде «/». Двоеточие в явном виде задать нельзя, так как в более ранних версиях Mac OS, до эпохи X-версии, этот символ использовался для разделения каталогов. Кроме того, в именах можно задавать знаки, наподобие «?» и «*», используемые при указании масок файлов. В Windows Vista ограничения чуть более строгие, так как нельзя использовать не только слэши «/» и «», но и кавычки, двоеточие и ряд других символов.

Следует отметить, что в целом файловая система NTFS более гибкая и функциональная, чем HFS+ - так, поддерживаются прозрачное сжатие и шифрование файлов, дисковые квоты (ограничения по использованию дискового пространства), точки монтирования - reparse points.

Инструментарий


В Mac OS X все задачи по обслуживанию дисков и разделов, а также сменных носителей возложены на специальную программу Disk Utility, в Windows Vista аналогичную роль играет консоль управления «Disk Management». И то, и другое средство позволяет разбивать диски на разделы, в обеих системах поддерживаются схемы разбиения на основе Master Boot Record (основная в Windows) и GUID-таблицы разделов (используется в макинтошах на Intel-процессорах). Кроме того, в Mac OS X можно задействовать и Apple Partition Map, актуальную для старых компьютеров на процессорах PowerPC, а в Vista - так называемую схему Dynamic Disk. Вполне очевидно, что у пользователя возникает закономерный вопрос: а какую схему разбиения диска следует выбрать с точки зрения максимальной совместимости, особенно в случае компьютеров Apple? Если речь идет о внешних сменных носителях, подключаемых в том числе и под другими операционными системами, то ответ однозначен - MBR, но в случае системных дисков не все так просто. Проблема вызвана тем, что в новых макинтошах нет BIOS как таковой, соответствующая функциональность по загрузке операционной системы возложена на интерфейс EFI - Extensible Firmware Interface. Windows Vista загрузку на компьютерах с EFI поддерживает, но при этом добавляет в системный EFI-раздел Windows Boot Manager с перспективой невозможности загрузки Mac OS X. Очевидно, такой вариант развития событий не слишком желателен, поэтому наиболее целесообразным является вариант с использованием утилиты Apple Boot Camp, добавляющей эмуляцию BIOS и MBR-разбиения на системном диске с GUID-таблицей.

И Windows Vista, и Mac OS X поддерживают создание программных RAID-массивов с помощью средств управления дисками. Следует отметить, что речь идет о средствах именно операционных систем - многие распространенные в настоящее время RAID-контроллеры тоже являются программными, но только на уровне драйвера. Различие в подходах в том, что в Windows Vista необходимо сконвертировать диск в Dynamic, в Mac OS функциональность RAID-массивов поддерживается и при других схемах разбиения.

В Windows Vista поддерживается неразрушающее уменьшение и увеличение разделов даже на дисках со схемами разбиения на основе MBR и GUID-таблицы - это означает, что пользователь сможет сохранить информацию при переразбиении. Но, разумеется, перед выполнением столь ответственных операций с диском имеет смысл создать резервную копию данных.

В Mac OS X крайне широко поддерживаются образы дисков - так, образ можно создать на основе диска или раздела (то есть, заложена функциональность коммерческих продуктов клонирования дисков под Windows), а также отдельной папки. Образы могут быть сжатыми, доступными в режиме не только чтения, но и записи, а также зашифрованными. Следует отметить, что помимо «родных» для Mac OS X форматов DMG и CDR (так называемые мастер-диски CD/DVD), поддерживается популярный ISO. Таким образом, образы отчасти играют ту же роль, что и архивы в других операционных системах.

Обе операционные системы позволяют выполнить проверку дисков на предмет логических ошибок, которые могли возникнуть в результате пропадания электроэнергии, повреждения носителя или множества иных причин. Отличие проявляется в способе проверки загрузочного диска - по вполне понятным причинам, для его проверки необходимо заблокировать запись (или отмонтировать), что мало осуществимо. В Windows используется так называемый режим boot-time, то есть может быть запланирован запуск проверки на этапе загрузки операционной системы. В Mac OS X для восстановления системного раздела следует использовать инсталляционный диск - загрузившись с него, можно запустить Disk Utility.

Интересной возможностью Mac OS X является так называемая проверка разрешений, verify disk permissions. Суть ее в том, что Disk Utility осуществляет сканирование диска и проверку разрешений файлов, находящихся в /System, /Library и /Applications, и - при необходимости, - исправление. Выполнение такой процедуры гарантирует, что никто не получит полномочий сверх необходимого.

Дефрагментация... Рано или поздно любой пользователь задумывается о необходимости ее выполнения, особенно, если он интенсивно работает с видео, аудио или графикой, то есть файлами большого и заранее непредсказуемого размера (а в таких условиях обеспечить низкий уровень фрагментации не может ни один самый продвинутый алгоритм). В Vista есть штатное средство - пусть и не такое наглядное, как в Windows 2000/XP, но, тем не менее, эффективно выполняющее функции. В Mac OS X соответствующего инструментария нет, поэтому для дефрагментации дисков приходится прибегать к сторонним коммерческим продуктам - что, естественно, не может не вызывать удивления при четкой «мультимедийной» направленности макинтошей.

Как в Mac OS X, так и в Windows Vista поддерживается запись CD и DVD дисков, она может осуществляться как из Finder"а и проводника, так и соответствующих мультимедийных приложений, входящих в комплект поставки. Кроме того, Disk Utility позволяет прожигать образы дисков - в силу поддержки этих образов.

В этой статье я расскажу о различных способах форматирования внешнего жесткого диска (или флешки) для полноценного использования его c Windows и MAC OS. Данный вопрос коснулся меня, когда я купил свой первый MacBook Air.

Имея внешний диск Western Digital на 500Gb, я хотел использовать его с обеими операционными системами, т.к. все еще часто работал на компьютерах с Windows (на работе и на втором компьютере дома). Какие способы я для этого перепробовал и что из этого вышло читайте дальше.

Покупая жесткий диск в магазине, он скорее всего будет в формате NTFS , который рассчитан на использование с Windows. Компьютеры Mac работают с другой файловой системой – HFS+ .

Существуют также FAT32 и ExFAT , которые совместимы с обеими операционками. Далее я приведу сводную таблицу этих файловых систем.

Файловые системы

NTFS (Windows NT File System):

  • Позволяет считывать/записывать информацию в Windows. Только чтение в MAC OS.
  • Максимальный размер файла: 16TB
  • Максимальный размер тома диска: 256TB
  • AirPort Extreme (802.11n) и Time Capsule не поддерживают NTFS

HFS+ (Hierarchical File System):

  • Позволяет считывать/записывать информацию в Mac OS.
  • Для считывания (не записи) информации в Windows необходимо установить HFSExplorer.
  • Максимальный размер файла: 8EiB
  • Максимальный размер тома диска: 8EiB

FAT32 (File Allocation Table):

  • Максимальный размер файла: 4GB
  • Максимальный размер тома диска: 2TB

exFAT (Extended File Allocation Table):

  • Позволяет считывать/записывать информацию в Windows и MAC OS.
  • Максимальный размер файла: 16EiB
  • Максимальный размер тома диска: 64ZiB

Итак. Получается что exFAT самый оптимальный способ форматирования жесткого диска для полноценного использования с Windows и MAC OS “, – скажете вы. Но не будем спешить и рассмотрим все возможные варианты. Я вообще люблю рассматривать “все возможные варианты” с чем бы это ни было связано, прежде чем сделать выбор в какую-либо сторону.

Никто не ставит вопрос ребром “Или exFAT или вообще ничего! “. Существуют и другие решения. Вот они!

Форматировать диск в NTFS и использовать NTFS-3G для записи в OS X.

Если вы никак не хотите расставаться с NTFS в пользу FAT32 или exFAT, есть способ попытаться подружить ваш MAC с таким диском. Для этого вам понадобится специальный драйвер NTFS-3G.

Связка программ NTFS-3G и OSXFuse теоретически должна позволить вашему Маку работать с разделами NTFS. Я данный метод пробовал, но наступил на грабли и набил большую шишку.

Для того чтобы все это заработало необходимо: установить OSXFuse, потом NTFS-3G и после всего этого все равно будет выскакивать ошибка при подключении NTFS дисков, которую можно исправить с помощью патча для NTFS-3G.

Короче говоря, способ, который изначально не работает, а требует каких-то мутных патчей для меня вообще не способ. Вы решайте сами.

Форматировать диск в HFS+ и использовать HFS Explorer для чтения в Windows

Вот именно ЧТЕНИЯ! информации с диска. Ни о какой записи речи быть и не может. Хотя если заплатить 50$ за программу MacDrive для Windows, можно получить полный доступ и управление HFS+ диском.

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

Разбить диск на два раздела и использовать их отдельно для каждой ОС

Данный способ отличается от двух предыдущих тем, что вместо одного раздела для обеих ОС, вы разделите Ж.Д. на две части, каждая для своей ОС.

Когда я “разбил” свой 500Гб диск на две части по 250Гб и отформатировал их в NTFS и FAT32, мне казалось что “вот оно золотое решение!!! – можно использовать каждый диск с той или иной ОС пусть и с разными возможностями”.

Но радость моя закончилась в тот момент когда я не смог переписать информацию с одного диска на другой и обратно ни в одной операционной системе. Мой Macbook видел оба диска, а Windows распознавал только один NTFS. Использовать внешний жесткий диск таким образом меня не устраивало.

Опробовав вышеперечисленные способы, я все же выбрал для себя exFAT. Вариант тоже не идеальный и имеет ряд недостатков. Вот основные из них:

  • скорее всего вы не сможете подключить exFAT жесткий диск к своему любимому телевизору, т.к. на данный момент этот формат поддерживается только операционными системами Windows и Mac OS
  • поддержка exFAT имеется в Windows XP с Service Pack 2 и 3 с обновлением KB955704, Windows Vista с Service Pack 1, Windows Server 2008, Windows 7, Windows 8, а также в Mac OS X Snow Leopard начиная с версии 10.6.5

Для выполнения разных манипуляций с дисками (разбить, форматировать, очищать и т.п.) в Mac OS существует Disk Utility. Пользоваться ей интуитивно просто. Так для того чтобы создать на диске два раздела необходимо в левой стороне выбрать нужный вам диск, а в правой перейти на вкладку Partition и в поле Partition Layout выбрать 2 Partitions.

После этого можно задать размер для каждого из разделов, указать названия и тип файловой системы. Подтверждаем Apply – дальше все сделают за вас.


Любое наше общение с компьютером - редактирование текста или фото, просмотр фильмов и прослушивание музыки, и даже игры - это работа с файлами. Нам кажется, что мы рисуем картинку или убиваем монстров, а на самом деле машина изменяет файлы, записывает, перемещает и даже удаляет. И тот способ, которым операционная система записывает и находит файлы на вашем диске, и как они отличаются один от другого, называют файловой системой.

За годы существования компьютеров появилось немало файловых систем со своими преимуществами и недостатками. Конечно же, Macintosh и PC используют разные файловые системы. А различия непременно порождают проблемы совместимости. И, чтобы знать, как эти проблемы решаются, придется, для начала, разобраться с какими видами файловых систем мы вероятнее всего можем столкнуться.

FAT . Одна из первых файловых систем, появившаяся вместе с PC компьютерами и системой DOS в 1981 году. По сути, представляет собой простую таблицу, в которой записано, где файл находится на диске. Отсюда и название: File Allocation Table - таблица размещения файлов.

FAT32 . В системе FAT были заложены ограничения на максимальный размер файла и диска - не больше 2 Gb. К середине 90х годов, с развитием компьютеров, эти ограничения потребовалось расширить. Так появилась новая система FAT32. Теперь ограничения на размер файла стали 4Gb, а диска - 2Tb. Но, по принципам работы, это была все та же старая FAT, т.е. таблица. В настоящее время FAT32 (как и NTFS, о которой ниже) является основной файловой системой современных Windows-компьютеров.

HFS (Hierarhical File System - иерархическая файловая система). Родилась практически вместе с первыми маками в 1985 году. В HFS каждый файл состоит из двух частей, так называемых, ветви ресурсов и ветви данных. Ветвь данных - это собственно содержание файла, например, текст, изображение, видео или звук. В ветви ресурсов содержится различная служебная информация о файле: даты создания и редактирования, информация о программе создателе, иконка файла, а если этот файл - программа, то и используемый код.

HFS+ К концу 90х годов, Мак-пользователи столкнулись с такими же проблемами, что и пользователи системы FAT, и в 1998 Apple выпустила в свет новую версию - HFS+, в которой снимались все мешавшие жить и трудиться ограничения. Количество возможных символов в имени файле изменилось с 32 до 255, а максимально допустимый размер файла и используемого диска достиг 8Eib. Exbibite - это 2 в 60-ой степени, и, чтобы понять что означает эта запредельная цифра, скажем, что максимальный размер диска на маке превышает максимальный размер в системе FAT32 в четыре миллиона раз! На сегодняшний момент HFS+ является основной файловой системой компьютеров Apple.

- NTFS (New Technologi File System) - новая файловая система, разработанная Microsoft с целью заменить семейство FAT. В отличие от примитивной FAT, NTFS - это сложный алгоритм записи файлов. Основным достоинством системы является надежность и возможность восстановления после сбоев.

Теперь, ознакомившись с различными видами файловых систем, мы просто не можем не задаться вполне ожидаемым вопросом: «а что произойдет, если вынуть диск из Мака и присоединить его к РС? » Ответом на этот вопрос будет простая аксиома, которую, пожалуй, следует всегда применять в вопросах совместимости Мака и PC:

Windows практически не совместима с Mac OS X, но Mac OS X очень хорошо совмещается с Windows.

А это значит, что маковский диск с HFS+ Windows не опознает и воспримет как неотформатированный. Хотя, безвыходных ситуаций не бывает, - при помощи отдельных коммерческих программ, таких как MacOpen, Маковский диск теоретически можно, хотя не без труда, прочитать на РС.

А вот подключение PC диска к Маку довольно просто. Mac OS позволяет читать диски в формате FAT и FAT32, а с появлением Mac OS X 10.3 и диски NTFS. Под диском подразумевается любой носитель информации - это может быть внутренний или внешний жесткий диск (винчестер), флэш-карта, или обычная дискета. При подключении на рабочем столе появится иконка нового диска, и вы сможете работать с ним также как и с остальными. Однако для NTFS дисков есть, все же, существенное ограничение - на Маке они подключаются исключительно в так называемом режиме read-only. Это означает, что вы сможете просматривать структуру диска, открывать и переписывать файлы на свои диски, но не сможете сохранить их, а также записывать новые файлы на такой диск.

PC-пользователям будет любопытно и полезно узнать, что имя PC-диска, которое вы увидите при подключении, это то имя, которое было дано ему при создании (форматировании). На Маках отсутствует буквенное обозначение дисков, например, D или C. В качестве идентификации диска всегда используется его имя, а если это PC-диск, то в качестве имени будет использоваться то, что в Windows называется меткой тома. Поэтому, вместо диска D, мы получим диск SYSTEM или ARCHIVE или же страшное дефолтное название от Windows, вроде FGHYJN009890.

Свежеприобретенный диск перед началом работы всегда и во всех файловых системах форматируют. Диски для Мака обычно форматируют как HFS+ (другое современное название - Mac OS Extended Journaled) - это "родная" файловая система маков. Постоянное использование различных механизмов совместимости с чужими файловыми системами не добавит Маку эффективности. К тому же, установить Mac OS X на что-то, кроме HFS+, нельзя. Если необходимо отформатировать внешний носитель, который предполагается подключать к разным системам, форматируйте его как FAT32(MS DOS File System). Это сделает диск универсальным.

Для работы с дисками можно использовать программу Disk Utility, входящую в комплект Mac OS. Находится она в ApplicationsUtilities. Это комплексная программа, позволяющая выполнять все основные работы с дисками: разбитие диска на несколько логических, форматирование, лечение диска, если произошел какой-либо сбой, и даже создание RAID массива. В подавляющем большинстве случаев вам будет достаточно функций этой утилиты.

Определение типа файла

Теперь стоит сделать лирическое отступление и немного рассказать об одной исторической особенности HFS+. Существующие на настоящий момент операционные системы ведут свою историю в течении уже десятков лет, и их последующие версии - улучшенные и дополненные старые. Например, Windows впервые появилась в 95 году, но, в действительности, это наследница еще более старой системы - DOS, разработанной для самых первых PC, а системы семейства UNIX берут свое начало, чуть ли не со времен первых полетов в космос.

В семействе маков тоже существовал такой "динозавр", теперь его называют Mac OS Classic. Но, вместо инноваций и улучшений, Apple разработала новую систему - Mac OS X, фактически написав ее с нуля. Так что, среди окружающих ее старцев, Mac OS X просто юная девушка, - ее первые версии появились только в 2000 году. При разработке новой системы специалистам из Apple пришлось учитывать вопросы совместимости как со старой Mac OS, чтобы обеспечить переход старых пользователей, так и с Windows, чтобы привлечь новых с доминирующей платформы.

Для определения типа файла система использует сразу три различных подхода. В системе HFS, как было описано выше, любой файл состоит из двух частей: содержания файла и информации о типе файла. Эта информация хранится в отдельном месте - ветви ресурсов в виде специальной текстовой метки. В этом и состоит принципиальное отличие от Windows, где тип файла определяется расширением имени. В подходе Apple есть существенное преимущество - как бы вы не изменяли имя файла, вы не сможете изменить его принадлежность к тому или иному типу, минимизируя риск случайной ошибки.

Однако у описанного подхода есть и недостаток. Популярные протоколы передачи файлов через Intеrnet не поддерживают систему HFS+. При отправлении файла по электронной почте информация о типе файла исчезнет вместе с веткой ресурсов. Это значит, что пересылать маковские файлы через интернет можно только при использовании специальных мак-архивов.

При создании Mаc OS X Apple озаботилась этой проблемой, внедрив в систему механизм определения типа файла при помощи расширения, такой же, как у Windows. Mаc OS X прекрасно распознает типы PC-файлов. Но, в отличие от PC, где расширение имени не может быть больше трех букв, система позволяет использовать расширения, состоящие из бо льшего количества символов. Это значительно увеличивает информативность имени файла и позволяет пользоваться правильными аббревиатурами. Например, популярные графические форматы jpg и tif в действительности называются JPEG и TIFF - при этом система понимает оба варианта написания. Apple пользуется новыми возможностями и дает и собственным файлам вполне информативные расширения имени: .pages - документ созданный в редакторе Pages из комплекта iWork, dspproj - проект DVD диска созданный в DVD Studio Pro и т.д. Таким образом, Mac OS X определяет тип файла используя как и старый Classic подход, для обеспечения преемственности со старыми маками, так и PC поход, использующий расширения имени, при этом расширив его функциональность.

Таким образом, на Маках реализованы три подхода к определению типа файла: старый HFS через ветвь ресурсов, PC - подход через трехбуквенное расширение имени файла и новый, усовершенствованный, через многосимвольное расширение имени файла

При желании, расширения файлов можно скрыть. При сохранении файла укажите флажок Hide Extension (скрыть расширение). Чтобы скрыть расширение уже существующего файла или файлов, нажмите Command-Option-i, предварительно выделив файлы, и выберите флажок Hide Extension в графе Name & Extension.



Всем привет. Недавно я задался вопросом как организовать обмен файлами между операционными системами. Предположим, я хочу установить сразу три основные ос на своём ноутбуке: линукс, виндовз и хакинтош. Каждая ос предназначается для своих задач: Линукс - для работы и программирования, винда - для игр и хак - просто для разных экспериментов.

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

Так вот, задача стоит такая: нужен раздел на системном накопителе, причём с такой файловой системой, которая поддерживается на чтение и запись всеми перечисленными операционками. На этом разделе будут храниться скачанные из интернета файлы и меж-операционные проекты.

Как такая задача решалась мной раньше? Раньше я использовал только винду с линуксом, поэтому задачи обмена с apple os не возникало. Конечно, хотелось использовать открытую и родную фс для линукса - ext4. Но на винде её смонтировать непросто. Нужно устанавливать бесплатный (но проприетарный) Paragon ExtFS for Windows. И ладно, если бы это работало, но к сожалению данное ПО повреждает вам раздел с линуксом. Напоролся пару раз, и всякое желание пользоваться этим по пропало.

А вот виндовая фс под линуксом читается и пишется без проблем. Нужно всего лишь установить ntfs-3g драйвер. Он работает в юзерспейсе. Файловая система проприетарная, но решение работает.

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

На самом деле вариантов немного. Давайте разберёмся, какие есть файловые системы, и какие из них являются более или менее универсальными.

Fat32 - всем известная древняя фс, является самой универсальной в плане переносимости, но и самой убогой в плане ограничений. Была разработана давно, не поддерживает файлы размером более 4 Гб. Проприетарная. Для моих задач не подходит.

Ntfs - родная фс для винды, проприетарщина. Линукс, как я уже писал выше, её поддерживает с помощью стороннего драйвера (ntfs-3g). Мак нативно её не понимает, хотя можно доустановить соответствующее по. Есть несколько вариантов, как платных, так и бесплатных. Ни один из них мне не нравится. ntfs-3g работает в userspace (с медленной скоростью), а платные решения - платные.

Hfs+ - одна из худших фс, когда либо созданных. Родная для мак ос, но нисколько не универсальная. Можно примонтировать на линуксе, а для винды опять же есть платные решения - в пролёте.

Ext4 - одна из правильных фс, родная для линукс. Но в плане монтирования в неродных ос - опять проблемы. За платные решения для хакинтоша и для винды опять просят денег. Есть и бесплатные решения, к примеру ext2fsd, но этот драйвер не умеет писать в ext4. В пролёте.

Udf - одна из правильных фс, поддерживается нативно всеми ос. Эта фс была бы лучшим вариантом, если бы не компания apple. Изначально udf создавалась для оптических носителей, но она может быть спокойно использована на обычном жёстком магнитном диске. НО! Из-за того, что яблочники не реализовали поддержку этой фс с раздела, вся задумка отменяется. Даже последняя мак ос Х поддерживает данную фс только если всё блочное устройство не имеет таблицы разделов. На гитхабе есть скрипт format-udf , который может подготовить носитель специальным образом: в начальном блоке данных прописывается mbr, говорящий что раздел начинается прямо там же где и сам mbr. Т.е. накопитель как бы одновременно и с таблицей разделов (то что понимает винда), и вроде как и без таблицы разделов. Этот способ предполагает что носитель будет внешний, а мне нужно сделать exchange раздел именно на внутреннем накопителе. Так что данный вариант тоже в пролёте.

exFat - проприетарщина, но нативно работает как в винде, так и в маке. Это очень хорошо. А что в линуксе?

Вкратце история:

Эта фс использовалась для sd карт на андроидах, а там у нас линукс ядро. Производители реализовали драйвер exfat для linux ядра и никому его не показывали. Но некто в интернете слил на гитхаб их код. Было понятно, что это воровство, и в таком виде код в ядро попасть не мог. Однако, в этом коде сообщество нашло куски gpl кода, что разумеется, требовало раскрытия всех исходников, т.е. это было уже воровство у сообщества со стороны компании samsung. Через некоторое время самсунг выпустили этот код под gpl лицензией.


Спрашивается, а почему тогда данный драйвер не поддерживается из коробки? Потому что его нет в ядре. Мердж этого кода (пусть и gpl-ного) в mainline - это по сути троян от мелких (из-за патентов). Торвальдс это понимает, и, понятное дело, ядро не отравит.

В линуксе монтировать exfat можно либо с помощью exfat-fuse драйвера, либо с помощью exfat-nofuse. Конечно, лучше nofuse, так как он будет работать быстрее. Но его придётся собирать каждый раз при обновлении ядра. Благо, для автоматизации этой задачи есть механизм dkms.

Подведём итог

Я останавливаюсь на exfat. Да, проприетарщина, но ничего не поделаешь. Зато всё нативно работает, и “танцы с бубном” отсутствуют: во всех трех операционных системах есть нативная поддержка и возможность поставить эту фс именно на раздел. Ограничения в 4 Гб нет. И в целом, это решение достаточно простое.

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