- Форматы файловой системы, доступные в Дисковой утилите на Mac
- Apple File System (APFS)
- Mac OS Extended
- Совместимые с Windows форматы
- Структура файловой системы
- Домены (Domains)
- User, Local, Network, System
- Домены System и Local
- Файловая система Apple File System (APFS)
- 64-битные иноды, атомарные транзакции, метки времени в наносекундах, клонирование директорий, встроенное шифрование
- Основные характеристики
- Контейнеры и тома
- 64-битные индексные дескрипторы (inode)
- Наносекундные метки времени
- Защита от сбоев
- Разреженные файлы (sparse files)
- Расширенные атрибуты
- Шифрование
- Клонирование файлов и директорий
- Снапшоты
Форматы файловой системы, доступные в Дисковой утилите на Mac
Дисковая утилита на Mac поддерживает несколько форматов файловых систем:
Apple File System (APFS). Файловая система, использующаяся в macOS 10.13 и новее.
Mac OS Extended. Файловая система, использующаяся в macOS 10.12 и ранее.
MS-DOS (FAT) и ExFAT. Файловые системы, совместимые с Windows.
Apple File System (APFS)
Apple File System (APFS) — стандартная файловая система для компьютеров Mac с macOS 10.13 и новее, которая обеспечивает надежное шифрование, совместное использование пространства, получение моментальных снимков, быстрое изменение размеров каталогов и улучшенные принципы файловой системы. Система APFS оптимизирована для флеш-накопителей и дисков SSD, которые используются в новейших компьютерах Mac, однако ее также можно использовать для более старых систем с традиционными жесткими дисками и внешними накопителями с прямым подключением. Версии macOS 10.13 и новее поддерживают APFS для загрузочных томов и томов данных.
APFS выделяет дисковое пространство внутри контейнера (раздела) по требованию. Если контейнер APFS содержит несколько томов, его свободное пространство используется совместно и при необходимости автоматически назначается любому из томов. При желании можно задать размеры резерва и квоты для каждого тома. Каждый том использует только часть общего контейнера, поэтому доступное пространство равно общему размеру контейнера за вычетом размера всех томов в контейнере.
Для компьютеров Mac с macOS 10.13 или новее выберите один из следующих форматов APFS.
APFS: использует формат APFS. Выберите этот вариант, если Вам не нужен зашифрованный или чувствительный к регистру формат.
APFS (зашифрованный): использует формат APFS и шифрует том.
APFS (чувствительный к регистру символов): использует формат APFS и учитывает регистр в именах файлов и папок. Например, папки с именами «Домашняя работа» и «ДОМАШНЯЯ РАБОТА» не будут считаться одинаковыми.
APFS (чувствительный к регистру символов, зашифрованный): использует формат APFS, учитывает регистр в именах файлов и папок и шифрует том. Например, папки с именами «Домашняя работа» и «ДОМАШНЯЯ РАБОТА» не будут считаться одинаковыми.
В контейнерах APFS можно легко добавлять и удалять тома. Каждый том в контейнере APFS может иметь собственный формат APFS — APFS, APFS (зашифрованный), APFS (чувствительный к регистру символов) или APFS (чувствительный к регистру символов, зашифрованный).
Mac OS Extended
Выберите один из описанных ниже форматов файловой системы Mac OS Extended для обеспечения совместимости с компьютерами Mac с macOS 10.12 и более ранних версий.
Mac OS Extended (журналируемый): использует формат Mac (журналируемый HFS Plus) для защиты целостности иерархии файловой системы. Выберите этот вариант, если Вам не нужен зашифрованный или чувствительный к регистру формат.
Mac OS Extended (журналируемый, зашифрованный): использует формат Mac, запрашивает пароль и шифрует раздел.
Mac OS Extended (чувствительный к регистру символов, журналируемый): использует формат Mac и учитывает регистр в именах папок. Например, папки с именами «Домашняя работа» и «ДОМАШНЯЯ РАБОТА» не будут считаться одинаковыми.
Mac OS Extended (чувствительный к регистру символов, журналируемый, зашифрованный): использует формат Mac, учитывает регистр в именах папок, запрашивает пароль и шифрует раздел.
Совместимые с Windows форматы
Выберите один из описанных ниже форматов файловой системы, совместимых с Windows, если Вы форматируете диск для использования с ОС Windows.
MS-DOS (FAT). используется для томов Windows, размер которых не превышает 32 ГБ.
ExFAT. используется для томов Windows, размер которых превышает 32 ГБ.
Источник
Структура файловой системы
Домены (Domains)
В многопользовательской системе доступ к различным ресурсам системы становится неоднородным. Часть ресурсов нужна большинству пользователей, например прикладные программы. Доступ к ним должен быть открыт для всех пользователей. Некоторые ресурсы являются критически важными для работы самой системы, поэтому желательно ограничить доступ к ним со стороны обычных пользователей. Помимо общих ресурсов, каждому пользователю хотелось бы хранить и использовать некоторые ресурсы индивидуально, чтобы другие пользователи не имели к ним доступа, например персональные сообщения электронной почты.
Поэтому Mac OS X заметно строже относится к расположению файлов в файловой системе. Практически каждый файл имеет свое заранее определенное место. Для файлов различного типа и назначения определены различные стандартные места. Не рекомендуется сохранять файлы в произвольных местах и без необходимости перемещать или переименовывать файлы. Изменение местоположения или переименование системных файлов может привести к полной или частичной потере работоспособности системы. Алгоритм работы Finder’а также рассчитан на наличие определенного порядка в размещении информации.
Чтобы разделить «сферы полномочий» и навести во всем этом порядок, в Mac OS X введено понятие домена файловой системы или просто домена.
Домен (domain) — это некоторая область файловой системы, имеющая четко выраженную, заранее определенную структуру, что облегчает поиск доменов и работу с ними. Домены различаются наполнением — конкретными файлами, хранящимися в определенных местах, и степенью доступности этих файлов. Всего имеется четыре домена:
User, Local, Network, System
User (Пользователь). Это домен пользователя, который в данный момент зарегистрировался в системе. Папка верхнего уровня этой структуры называется домашней папкой данного пользователя. Домашняя папка пользователя может находиться как на загрузочном диске, так и на другом компьютере в сети. Пользователь сам решает, что и как хранить в своем домене.
Local (Локальный). Это домен программ, документов и других ресурсов, которые не являются критически важными для работы системы, но должны быть доступны всем пользователям данного компьютера. Администраторы системы могут добавлять, удалять или модифицировать элементы этого домена. Домен всегда располагается на загрузочном диске данного компьютера.
Network (Сеть). Это домен для программ, документов и других ресурсов, которые должны быть доступны всем пользователям локальной компьютерной сети. Обычно ресурсы этого домена помещаются на один из серверов сети и находятся в ведении администратора сети.
System (Система). Это домен системного программного обеспечения, установленного фирмой Apple. Всегда находится на загрузочном диске. Содержит программы, критически важные для работы всей системы. Пользователь не может добавлять, удалять или изменять содержимое этого домена. Только «главный администратор» — root имеет исключительные права на внесение изменений в содержимое этого домена.
Домены System и Local
Стандартная общая структура доменов System и Local такова:
Mac OS X
Applications
Library
System
В данном случае Mac OS X — это имя загрузочного диска Mac OS X.
Если вы установили Mac OS X на тот же том, где уже была установлена Mac OS 9.1, то в указанную структуру будут внесены следующие добавления:
Mac OS X
Mac OS 9 Files
System Folder /это системная папка Mac OS 9.1/
Applications (Mac OS 9)
Documents /если такая папка существовала/
Volumes
Кроме того, если Mac OS 9.1 работала в многопользовательском режиме, то в папке Users будет созданы домашние папки для каждого зарегистрированного в Mac OS 9.1 пользователя.
Так как Mac OS X ревниво и строго относится к расположению файлов в файловой структуре, хотелось бы знать более подробно, что и где хранится. Приоткроем занавес. Сначала кратко обо всем…
Папка | Содержимое |
Объединенное место доменов System и Local для хранения программ, доступных всем пользователям данного компьютера. Сюда входят как программы, поставляемые самой фирмой Apple , так и программы других фирм. Содержимое этой папки может модифицироваться администраторами системы. Экранная кнопка Finder’а — Applications отправляет вас именно сюда. | |
Содержит полезные административные и другие вспомогательные программы. | |
Предназначена для демонстрационных версий и программ, которые трудно классифицировать. | |
Часть локального домена, содержащая ресурсы (кроме программ), доступные всем пользователям данного компьютера. Часть ресурсов поставляется самой фирмой Apple , остальные — другими фирмами. Наиболее известные ресурсы этой области — шрифты, клавиатурные раскладки, модули выбора цвета ( color pickers ), цветовые профили устройств, plug-ins , пользовательская документация. | |
Часть системного домена, содержащая ресурсы, необходимые для работы всей системы. Никогда не пытайтесь что-либо изменить в содержимом этой папки. Права на внесение изменений в эту папку предоставлены только главному администратору системы — root’у . |
Папка Library — это наиболее характерная часть файловых доменов. В отличие от других папок Library присутствует во всех доменах. Как правило в ней содержатся дополнительные ресурсы, используемые программами, но не являющиеся для этих программ критически важными, например, шрифты или цветовые профили устройств. Критически важные ресурсы программ должны находится в самих программах (более подробно этот вопрос будет рассмотрен в следующих статьях, посвященных Mac OS X).
Структура папки Library одинакова для всех доменов, однако не все элементы этой папки являются строго обязательными. Ниже приведен список основных элементов папки Library. Большую часть из них скорее всего вы обнаружите в доменах Local или Network , а не в домене User .
Источник
Файловая система Apple File System (APFS)
64-битные иноды, атомарные транзакции, метки времени в наносекундах, клонирование директорий, встроенное шифрование
На вчерашней презентации WWDC 2016 компания Apple показала новые версии операционных систем macOS (Sierra) 10.12, iOS 10, tvOS 10, watchOS 3, приложение для обучения детей программированию Swift Playgrounds и новые эмодзи.
Казалось бы, ничего интересного. Однако, Apple всё-таки выкатила кое-что фундаментальное. Самая значительная разработка из всего упомянутого на презентации — это файловая система нового поколения Apple File System (APFS) в операционной системе macOS (Sierra) 10.12.
На сайте для разработчиков вскоре после презентации опубликована документация с основными характеристиками и описанием файловой системы, которая повторяет отдельные функции мощной свободной файловой системы ZFS.
Сейчас в компьютерах Apple используется файловая система HFS+, расширенная версия HFS (Hierarchical File System, иерархическая файловая система), созданной более 30 лет назад. Подобно своей предшественнице, HFS+ использует древовидную структуру, называемую B*-дерево, для хранения большей части метаданных. Отсюда и название «иерархическая файловая система».
Официальное представление HFS+ состоялось 19 января 1998 года, вместе с MacOS 8.1. С 2002 года в системе реализовано журналирование для повышения надёжности хранения информации. С версии OS X 10.3 журналирование включено по умолчанию, появилась возможность работать в режиме с учётом регистра имён.
Вплоть до версии OS X 10.7 разработчики продолжали дорабатывать HFS+ и реализовывать на уровне файловой системы новые функции для OS X. Но факт остаётся фактом: HFS изначально разрабатывалась во времена флоппи-дисков и крутящихся винчестеров, когда размеры файлов измерялись в килобайтах или мегабайтах. Сегодня многие работают с накопителями SSD, где хранятся миллионы файлов — гигабайты или терабайты данных. К файловой системе выдвигаются совершенно иные требования. Вместо доработки старого кода компания Apple решила наконец-то написать новую файловую систему с нуля.
Файловая система APFS нового поколения пока находится на стадии developer preview, то есть её не планируется выкатывать в массовое использование в ближайшее время. В данный момент нельзя использовать том APFS как загрузочный диск, его также нельзя применять в системе резервного копирования Time Machine, в Fusion Drive или с шифрованием File Vault. Но можно для обычного незагрузочного тома.
Предстоит ещё долгая доработка и тестирование, но уже потом APFS станет основной файловой системой Apple на десятилетия вперёд.
APFS, в отличие от HFS+, изначально различает регистр символов в названиях файлов и папок, и эту функцию нельзя отключить. Это следует иметь в виду всем, кто решит использовать APFS.
В принципе, Apple рекомендует для начала поэкспериментировать с APFS на внешнем накопителе, на котором не хранится ничего важного. Для этого предлагается использовать утилиту hdiutil.
Основные характеристики
В официальной документации перечислены общие характеристики файловой системы APFS в сравнении с HFS+.
Контейнеры и тома
Контейнер — это основной объект для хранения данных в APFS. Конейнеры обычно полностью совпадают с записями GUID Partition Table (GPT), у них собственная схема защиты от сбоев и распределения дискового пространства. Каждый контейнер содержит один или больше томов или файловых систем, в каждой из которых есть собственное пространство имён, то есть набор файлов и директорий.
APFS напрямую не поддерживает программный RAID, но её можно использовать с томами Apple RAID для поддержки Striping (RAID 0), Mirroring (RAID 1) и Concatenation (JBOD).
64-битные индексные дескрипторы (inode)
64-битные иноды значительно увеличивает пространство имён, по сравнению с 32-битными индентификаторами в HFS+. В 64-битной файловой системе APFS поддерживается более 9 квинтиллионов файлов на каждом томе. Этого должно хватить каждому, как говорил Билл Гейтс.
Наносекундные метки времени
В APFS значительно увеличена точность меток времени (таймстампов). APFS поддерживает установку меток времени с точностью до наносекунды. Для сравнения, в HFS+ метки времени выставлялись с точностью до секунды.
Наносекундные таймстампы очень важны в современных файловых системах, потому что они помогают реализовать атомарности и атомарных транзакций — одного из основных требований ACID к транзакционной системе (например, к СУБД). Атомарность гарантирует, что никакая транзакция не будет зафиксирована в системе частично. Будут либо выполнены все её подоперации, либо не выполнено ни одной.
Защита от сбоев
В APFS реализована инновационная схема метаданных copy-on-write, которую Apple называет «защитой от сбоев» (“Crash Protection”). Она гарантирует, что изменения в файловой системе и записи в журнал остаются в синхронизированном виде, если что-то происходит во время записи — например, пропадает электропитание.
Схема copy-on-write в ZFS
Разреженные файлы (sparse files)
Файл с атрибутом «разреженный» предполагает содержание блоков нулевых байт, не хранимых на накопителе, а подразумеваемых. В HFS+ не было поддержки разреженных файлов.
Расширенные атрибуты
APFS имеет встроенную поддержку расширенных файловых атрибутов, которая в HFS+ реализовалась через файл Attributes, то есть через B-дерево.
Шифрование
Apple заявляет, что шифрование является фундаментальным свойством, которое встроено в APFS на уровне файловой системы. Для каждого тома в контейнере APFS устанавливается одна из моделей шифрования: без шифрования, шифрование с одним ключом, шифрование с несколькими ключами. В последнем случае отдельные ключи применяются для шифрования файлов и метаданных. В зависимости от оборудования, APFS использует режим шифрования AES-XTS или AES-CBC.
Клонирование файлов и директорий
Клонирование — практически мгновенное копирование файла или директории, при котором не требуется дополнительное место для хранения данных. При модификации клона файловая система записывает только изменение данных. Таким образом, новая файловая система может хранить много версий больших файлов, отнимая меньше дискового пространства.
Снапшоты
Снапшоты — открытые только для чтения «слепки» файловой системы в томе. Операционная система может использовать снапшоты для более эффективной процедуры резервного копирования. То есть наконец-то Time Machine будет работать нормально (быстро).
Конечно, по своим возможностям APFS значительно уступает 128-битной файловой системе ZFS, которую поддерживают Linux, FreeBSD и другие свободные ОС, но со стороны Apple это шаг в правильном направлении.
Странно, что в предварительной документации не упомянута функция компрессии, которую HFS+, кстати, поддерживает.
Apple долго пыталась перенести ZFS на систему OS X, по этому поводу велась активная дискуссия в списках рассылки ZFS, были опубликованы предварительные снапшоты для следующей версии OS X. Позже была сделана реализация OpenZFS для OS X (O3X) и MacZFX.
Файловая система ZFS распространяется с открытым исходным кодом, и Apple вполне могла позаимствовать некоторые идеи для файловой системы APFS. Реализация open source для APFS пока не готова, компания Apple планирует опубликовать задокументировать и опубликовать формат APFS в 2017 году.
На конференции WWDC сегодня вечером состоится первая формальная сессия, где разработчикам более подробно продемонстрируют новые возможности APFS.
Источник