Файловая система в мак ос. ExFAT - файловая система для Mac OS X и Linux

Начинающим пользователям Mac OS не легко понять, как устроена иерархия файлов и папок в системе. От части, файловая система унаследована из Unix, которая не так дружелюбна к пользователям, как Maс. Мы вкратце опишем содержимое конкретных папок и их предназначение, и рассмотрим следующие вопросы:
1. Общая структура файловой системы Mac OS
2. Папки Library и Application
3. Домашняя папка пользователя

Apple создала очень простую для понимания файловую систему. Ее корнем является корневой каталог главного раздела жесткого диска. Отсюда начинается иерархическая структура папок, которая определяет общий вид. Файловая система (в дальнейшем просто ФС) разработана так, чтобы каждый объект был привязан к папке, например, большинство приложений привязано к папке Application, а ваши личные файлы к Documents.
Путь (path) означает описание места объекта в ФС. Путь начинается с символа (/) наклонной косой черты, которая указывает, что данный путь начинается с верхнего уровня ФС, далее указывается вся иерархия папок, через которые необходимо пройти, чтобы добраться до указанного объекта.


Библиотечные папки (Library)

Являются конструктивной особенностью ФС, несмотря на идентичность папок с именем Library, каждая из них индивидуальна, а именно, определяет параметры предпочтительной настройки приложения, кэшированные объекты, скрипты.
В системе существуют две папки Library, это /Library и /System/Library. /Library, содержит в себе необходимые объекты для работы большинства приложений, созданные в основном сторонними компаниями. /System/Library содержит объекты, созданные Apple, и только она вправе изменять ее структуру. Вы, конечно, можете что-либо изменить в ней, но только если вы уверенны в своих действиях, иначе результат будет плачевным.

Каждая из библиотечных папок имеет строго выраженную структуру, описанную ниже, но разработчики программ могут вносить свои изменения.
Audio — осуществляет поддержку приложений для работы со звуком.
Automator – содержит стандартные операции для построение схем автоматизаций.
Caches – Кэш приложения, информация которая часто используется системой.
Calendars – папка для хранения информации календарей.
CFMSupport – содержит совместно используемые компоненты, необходимые как ОС так и приложению.
ColorPickers – содержит плагины селекторов цвета и цветовых палитр.
Keychains – содержит все принадлежащие пользователю цепочки ключей.
Documentation – приложения хранят файлы с документацией.
Logs – фалы журналов.
Preferences – параметры предпочтительной настройки приложений и компонентов.
И так далее. Перечислять их можно еще долго, я выделил наиболее часто используемые при работе с приложениями.

Папка Applications
Как можно догадаться из названия, она рекомендуется для установки в нее приложений. Благодаря этому любое установленное, когда либо приложение легко найти в системе.

В принципе в этой папке ни каких вопросов нет. Но есть один небольшой нюанс. Если вам захочется перенести приложениях их папки Application в другое место, но учите что при обновлении программы, тем более, если это продукт Apple, Software Update будет искать приложение по его месту установки, а не там, куда вы его перетащили, поэтому либо не чего не перетаскивайте, либо делайте полную переустановку приложения.

Домашние папки пользователей
Являются стандартными папками в верхнем уровне ФС в вновь установленной системе. В папке Users хранятся личные папки пользователей:
Desktop – элементы находящиеся на рабочем столе
Documents – хранилище для ваших документов
Downloads – многие интернет приложения написанные для Mac загружают файлы именно в эту папку
Movies – файлы видео и рабочая папка iMovie
Music – рабочая папка iTunes
Pictures – папка предназначенная для хранения графических файлов
Public – разместите в ней файлы, которые вы хотите разместить для общего доступа в сети

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

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

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

Как такая задача решалась мной раньше? Раньше я использовал только винду с линуксом, поэтому задачи обмена с 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 Гб нет. И в целом, это решение достаточно простое.

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

Приветствую всех! Сегодня мы рассмотрим все существующие файловые системы Mac OS, постараемся разобраться в их преимуществах и недостатках. На самом деле их на сегодняшний день не так и много, но о каждой по порядку.

HFS+ (Mac OS Extented)

HFS+ была представлена 19 января 1998 г. вместе с Mac OS 8.1, но впервые её представили в качестве тестовой файловой системы для так и не вышедшей OS Copland (1994-1996 гг.). Начиная с 11 ноября 2002 г., с выпуском обновления 10.2.2, Apple Inc. сделала возможным журналирование для повышения надёжности хранения информации. Оно было легко доступно с серверной версией Mac OS X, но только через интерфейс командной строки с настольных клиентов. Начиная с Mac OS X v10.3 журналирование стало включённым по умолчанию, а том с журналом получил название HFSJ .

HFS+ journaled(журнальный) стал основной файловой системой, которую использовала компания Apple на своих компьютерах Mac.

О файловой системе HFS+

  • Основной тип файловой системы в Mac OS X
  • Требуется для программ архивирования Time Machine или альтернативных вариантов в виде Carbon Copy Cloner или SuperDuper .
  • Для того чтобы с этим форматом работала Windows, требуется дополнительное программное обеспечение — MacDrive (чтение/запись) или HFSExplorer (только чтение)
  • Максимальная длина имени файла 255 символов
  • Максимальный размер диска: примерно 8 000 петаБайт (9 223 372 034 707 292 160 Байт или 2 63 -2 31)
  • Максимальный размер файла: примерно 8 000 петаБайт
  • Максимальное количество файлов: 2,13 млрд (2 31)

Есть вариант журнальный — когда система ведет лог-файл изменений (журнал), который позволяет легче восстановить диск после сбоя и ускоряет работу Time Machine

Идеальный формат для использования в качестве встроенного диска на Mac и в качестве диска для архивирования. Неудобен если необходимо подключение в качестве внешнего диска к компьютерам с другими операционными системами. HFS+ можно без проблем подключить к операционной системе GNU Linux, но даже в 2018 году он по прежнему не совместим с операционной системой Windows. Чья это вина, какая именно компания этому препятствует судить сложно, но чтение, просмотр файлов и редактирование файлов, находящихся на жестком диске с файловой системой HFS+, невозможно без установки в Windows дополнительного программного обеспечения, большая часть из них платная, что совсем не удивляет, когда дела касается Маков и Apple. Именно за это многие пользователи считают эту файловую систему одной из худших фс, когда либо созданных.

Мы не станем осуждать мнение почитателей Windows и сразу заметим, что HFS+ journaled(журналируемый) — это самая распространенная и часто используемая ФС на операционной системе Mac OS до сегодняшнего дня.

И еще один интересный факт. Если вы используете SSD диск с файловой системой HFS+, то размер доступного места на диске, практически равен заявленному на упаковке. Так SSD диск 120ГБ с файловой системой NTFS в Windows определяется, как 111 ГБ, если же тот же диск отформатировать в HFS+, то он определяется, как 119,17 ГБ. Согласитесь разница не малая, если учитывать столь не высокий объем накопителя.

APFS Файловая система Mac OS/IOS

Apple File System – это новая, современная файловая система, разработанная компанией Apple для использования в iOS, macOS, tvOS и watchOS . Эта файловая система, оптимизированная для работы с Flash/SSD накопителями, включает в себя функциональность сильного шифрования, copy-on-write, space sharing, клонирование файлов и папок, создание снимков (snapshots).

APFS стала файловой системой по умолчанию в iOS версии 10.3 . Возможность выбрать APFS в качестве основной на этапе установки появилась в (версия 10.13).

Одним из самых главных преимуществ файловой системы APFS — это просто огромная скорость переноса и копирования данных, перенос данных из раздела в раздел или же из с одного носителя на другой осуществляется практически моментально. Данная файловая система разрабатывалась с учетом реальных требований пользователей, а так же основываясь на последние разработки и технологии. Но это далеко не все преимущества.

Преимущества APFS

  1. APFS позволяет устройствам работать быстрее;
  2. Файловая система иначе подсчитывает объемы свободного и занятого пространства, поэтому после перехода на APFS окажется, что места на накопителе будет больше;
  3. Быстрее перемещает и копирует файлы, а значит, на загрузку ОС и установку приложений будет уходить меньше времени. Преимущества APFS над HFS+ наглядно продемонстрировал на WWDC 2016 инженер Apple Эрик Тамура, скопировав iTunes на флеш-накопитель, отформатированный под новую систему. Когда APFS уже завершила работу, диск на HFS+ продолжал копировать еще 17 секунд.;
  4. APFS позволяет осуществлять копирование во время записи метаданных, клонировать файлы и папки, делать моментальные снимки файловой системы, имеет повышенную устойчивость к сбоям, поддерживает совместное использование пространства, ускоренную каталогизацию и многие другие функции;

Более подробно о файловой системе вы можете прочитать в нашей статье

Как уже упоминалось, файловая система APFS стала доступна с выходом MacOS High Sierra, вот тут то и огромный недостаток, она и доступна только при работе в данной операционной системе. Ни одна из нижестоящих версий Mac OS X, даже MacOS Sierra не поддерживает APFS. Данный факт очень значительно снижает ее популярность и у большей части пользователей по прежнему основной файловой системой остается HFS+, что не вызывает удивления — обновление до High Sierra доступно далеко не всем устройствам.

HFS+ Extented (Журналируемый, зашифрованный)

Чтобы не повторятся сразу стоит сказать, данная файловая система обладает всеми преимуществами HFS+ журналируемого, но при этом зашифровывает абсолютно все данные на диске или же отдельном размере. Файловая система просто необходима для тех, кто ценит свою безопасность. Данная файловая система очень часто применяется для шифрования отдельных разделов жесткого диска или для файлов резервной копии Time Machine.

Единственным недостатком можно считать снижение скорости передачи данных и записи, так как шифрование замедляет процесс. В свою очередь 10 минутное создание резервной копии может длиться в разы дольше, что может так же отражаться и на скорости остальных процессов в работе ОС. Конечно такое замедление наиболее ощутимо на HDD дисках, если вы используете SSD накопитель, то и скорость шифрования будет уже не так заметна.

ExFat

Разработанная в Microsoft файловая система exFAT является оптимизированным для использования в сменных накопителях развитием семейства FAT. Вот основные ее преимущества перед предшественницами:

  • Максимальный размер файла увеличен до невообразимых сегодня 16 эксабайт (264 байт).
  • Размер кластера увеличен до 32 Мб. Снято ограничение на количество файлов и папок.
  • Появилась возможность сохранять права доступа к файлам и папкам.
  • Более рациональное использование дискового пространства: флешка, отформатированная в новую файловую систему, будет иметь чуть больший эффективный объем, чем если отформатировать ее в FAT32, а тем более в NTFS или HFS+.

exFAT — это самое лучшее решение для пользователей, которые вынуждены переносить файлы между Mac OS и Windows. Данная файловая система отлично поддерживается двумя конкурирующими ОС. Вторым плюсом, который и отличает exFAT от FAT32 — это отсутствие ограничения на передачу в файла, которое в Fat32 составляет 4ГБ.

FAT32

FAT32 является самой старой файловой системой из рассматриваемых в этой статье. Она начала активно использоваться начиная с Windows 95 и пришла на замену еще более устаревшей системе — FAT16. Большой возраст этой файловой системы имеет свои преимущества и недостатки.

К преимуществам в данном случае можно отнести тот факт, что FAT32 стала своеобразным стандартом и используется до сих пор во всех сменных носителях по умолчанию. Если вы сегодня купите флешку или SD-карту — «с завода» на ней будет установлена файловая система FAT32. Сделано это в первую очередь для того, что бы ваш сменный носитель могли поддерживать не только современные компьютера и гаджета, но и старые устройства и игровые консоли, которые имеют USB порт и умеют работать только с файловой системой FAT32.

Однако, в связи с возрастом этой системы, она имеет и некоторые недостатки, основным из которых является ограничение по размеру файла и всего тома. Каждый отдельный файл в этой файловой системе не может иметь размер больше 4 гигабайт, а весь раздел с файловой системой FAT32 не может быть более 8 терабайт.

И если со вторым минусом ещё вполне можно смириться (пока что мало кто использует накопители размером более 8Тб), то ограничение на размер файла является достаточно серьезным минусом — большинство видео в высоком качестве сейчас уже не укладываются в размер 4Гб, особенно если они в современном формате 4K.

Устройства с файловой системой FAT32 являются наиболее универсальными и совместимы со всеми версиями операционных систем Windows, Mac OS, Linux, любыми игровыми консолями и в общем практически всем, что имеет USB порт.

И еще пару слов о совместимости

Как ни странно, но в Mac OS хоть и нельзя создать раздел или носитель NTFS, который является основным для Windows, но в тоже время он отлично читается, и именно читается. Вы можете скопировать файл на другой раздел и редактировать его, скопировать папку или просто просмотреть ее содержимое из системы Mac OS. И здесь кроется еще один большой камень. Если вы попытаетесь отредактировать из Mac OS раздел NTFS на котором был установлен Windows, то в 90% случаев, винду вы с него запустить уже не сможете, при этом не обязательно залазить в системные или скрытые папки и файлы. Данный факт многократно замечался не только мной, но так же огромным количеством пользователей Mac OS по всему миру. С чем связано такое явление не известно. Но имейте в виду на будущее, что редактировать файлы, находящиеся на разделе с Windows, следует только с помощью стороннего ПО, например Paragon, если вы конечно хотите после редактирования Windows запустить.

Структура каталогов 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 позволяет прожигать образы дисков - в силу поддержки этих образов.

Когда только начинаешь своё знакомство с Mac’ом, бывает сложно сразу разобраться, как устроена файловая система операционной системы Mac OS X, особенно, если вы переходите на Mac с Windows или это у вас первый компьютер (тем, кто до этого работал с UNIX-подобными операционными системами, должно быть проще, потому что Mac OS X построена на базе UNIX, и файловая система у них устроена схожим образом). О том, где и какие находятся файлы, как выглядит путь до определённого файла, как организована структура основных директорий — я постараюсь ответить в этой статье.

Структура фaйловой системы Mac OS X

Файловая система имеет древовидную иерархическую структуру. Для её организации используются директории (они же папки или каталоги) — объекты фaйловой системы, содержащие внутри себя файлы и другие директории. Начинается файловая система с корня или корневой директории, которая находится в «начале» жёсткого диска и в ней содержатся уже все другие директории и файлы на жёстком диске.


Структура директорий

Путь к файлу

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


/Users/ixrevo/Documents/Notes/

Например, на скриншоте выше показан путь до директории Notes , находящейся внутри директории Documents , которая, в свою очередь, находится в директории пользователя ixrevo (о пользовательских директориях чуть позже), а она - в папке Users , которая уже располагается в корне диска Macintosh HD .

Путь к текстовому файлу с именем Shopping list.txt , который находится в директории Notes , выглядел бы следующим образом:

Относительный и абсолютный путь

Путь может быть относительным. Это значит, что он начинается от текущей директории, в которой вы находитесь, то есть, он относителен по отношению к ней. Например, если мы находимся в директории Documents , то относительный путь к файлу Shopping list.txt будет выглядеть так: Notes/Shopping list.txt .

Абсолютный путь - это путь, который начинается от корневой директории, он обязательно начинается со слеша:

/Users/ixrevo/Documents/Notes/Shopping list.txt

Основные директории

В корне системного диска (на котором установлена OS X) находятся четыре основные директории:

Директории в корне системного диска
Имя Описание
Applications Это папка, в которой лежат все установленные приложения. Собственно, большинство приложений устанавливаются простым перетаскиванием файла приложения в директорию Applications. Проще всего получить к ней доступ через сайдбар (левая панель) Finder’а.
Library В ней хранятся всевозможные настройки, кэши , а также туда часто приложения складывают какие-либо файлы, которые нужны им для работы. Чего там только нет, начиная от шрифтов и закачивая звуковыми семплами, если у вас, например, установлен GarageBand или Logic Pro .
System Название говорит само за себя. Содержит только одну папку Library , которая похожа на предыдущую Library , но только тут всё относится уже не к установленным приложениям, а к самой Mac OS X. Кстати, приложение Finder находится именно там: /System/Library/CoreServices/Finder.app
Users В этой директории хранятся домашние директории всех пользователей, зарегистрированных на данном компьютере. А в домашних директориях уже хранятся ваши документы, музыка, фото с котиками и прочее.

Хотя если быть честным, в корне диска намного больше директорий, например, dev, usr, etc, var и т.д. Все они скрыты от пользователя. И правильно, что скрыты, потому что они являются наследием UNIX и ничего интересного там в них нет.

Домашняя директория пользователя

Как я уже упоминал, у каждого пользователя есть своя домашняя папка, где лежит всё самое для него ценное, нажитое непосильным трудом. Находится она в папке с незамысловатым названием /Users , а сама называется по имени пользователя, например, у меня она зовётся ixrevo . Кстати, у пути к домашней директории /Users/ixrevo/ есть короткий алиас, который пишется так: ~ (этот символ называется тильда), его можно использовать, чтобы не писать путь целиком, и OS X поймёт, что вы имеете в виду. Остановимся чуть подробней на содержании домашней папки.

Директории в домашней папке пользователя
Имя Описание
Desktop Папка рабочего стола. Всё, что лежит в ней, вы можете увидеть на своём рабочем столе. Я использую её для временного хранения файлов по текущим проектам, но не люблю её захламлять.
Documents Всё, что вы посчитаете документами, стоит складывать в этой папке.
Downloads Папка, куда браузеры по умолчанию сохраняют файлы, скачанные из интернета.
Dropbox Папка , конечно, если он у вас установлен.
Library Скрытая папка. Аналогична предыдущим двум Library , но содержит уже то, что непосредственно относится к текущему пользователю.
Movies Папка для фильмов, сериалов и прочего видео.
Music Папка для музыки, а также место, где по умолчанию хранит библиотеку с вашей музыкой.
Pictures Предполагается хранить здесь фотографии и другие графические изображения. Также в ней по умолчанию iPhoto хранит библиотеку с фотографиями.
Public Папка, файлы в которой будут доступны пользователям локальной сети, если у вас включен общий доступ к файлам .

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

Статьи по теме: