Visitar URL original
Apple File System — Вікіпедія
Перейти до вмісту

Apple File System

Очікує на перевірку
Матеріал з Вікіпедії — вільної енциклопедії.
APFS
РозробникApple
Повна назваApple File System
Представлено27 березня 2017 (iOS 10.3)
Ідентифікатор розділу7C3457EF-0000-11AA-AA11-00306543ECAC (GPT)
Структура
Вміст директорійБ-дерева
Обмеження
Максимальний розмір файлу263 байтів (8 ЕіБ)
Максимум файлів263
Допустимі символи в назвахUTF-8 (Юнікод)
Можливості
Точність збереження дати1 наносекунда
Шифруванняпідтримується
Операційні системи в яких підтримуєтьсяmacOS, iOS, iPadOS, watchOS, tvOS, visionOS

Apple File System (APFS) — файлова система компанії Apple, створена для її комп'ютерів і мобільних пристроїв. APFS оптимізована для твердотілих накопичувачів і використовує 64-бітні ідентифікатори об'єктів, копіювання під час запису (copy-on-write), спільне використання вільного простору, клонування файлів і каталогів, знімки файлової системи та вбудовані засоби шифрування. Вона прийшла на зміну HFS+ як стандартна файлова система в iOS 10.3 (2017) та macOS High Sierra (2017).[1][2]

Історія

[ред. | ред. код]

Компанія Apple представила APFS на конференції розробників WWDC у 2016 році як наступницю HFS+, архітектура якої походить із доби переважання механічних жорстких дисків. Попередня реалізація з'явилася в macOS Sierra і призначалася для тестування; зокрема, вона ще не підтримувала завантаження системи з тому APFS, FileVault, Time Machine і накопичувачі Fusion Drive.[3]

27 березня 2017 року з виходом iOS 10.3 APFS стала стандартною файловою системою на пристроях з iOS. Того самого року в macOS High Sierra її запровадили як основний формат для системних томів на твердотілих накопичувачах; інсталятор підтримував перетворення придатних томів HFS+ на APFS без попереднього стирання даних.[4][5] У macOS Mojave (2018) використання APFS поширили також на системні диски з механічними накопичувачами та Fusion Drive.[6]

Архітектура

[ред. | ред. код]

Контейнери та томи

[ред. | ред. код]

APFS розділяє керування простором носія та організацію файлів. Розділ APFS містить контейнер, у якому можуть розміщуватися кілька томів — окремих файлових систем зі своїми каталогами й метаданими. На відміну від схеми з наперед визначеними розмірами розділів, томи одного контейнера використовують спільний пул вільних блоків. Для окремих томів можна задавати резервований обсяг і верхню межу використання простору.[7][8]

Для зберігання записів про файли, каталоги та інших метаданих використовуються Б-дерева. Об'єкти ідентифікуються числовими ідентифікаторами, а окрема структура зіставляє логічні об'єкти з їхнім фізичним розташуванням. Контейнер зберігає контрольні точки (checkpoints) узгодженого стану, які допомагають відновити файлову систему після перерваного запису.[7]

Копіювання під час запису та клони

[ред. | ред. код]

APFS застосовує механізм copy-on-write: під час зміни метаданих новий стан записується без перезаписування попередніх структур на тому самому місці. Це дає змогу атомарно перемикатися на узгоджену версію метаданих і зменшує ризик їх пошкодження після раптового вимкнення живлення. Для такого захисту APFS не використовує традиційне журналювання метаданих.[2][5]

Клонування дозволяє швидко створити логічну копію файлу або каталогу в межах одного тому без негайного дублювання всіх блоків даних. Початковий об'єкт і клон спільно використовують незмінені блоки; додаткове місце займають переважно змінені частини. Цей механізм скорочує час копіювання та обсяг записів на носій.[9]

Знімки файлової системи

[ред. | ред. код]

APFS підтримує знімки (snapshots) — доступні лише для читання представлення стану тому на визначений момент. Знімки не потребують створення повної другої копії всіх файлів; блоки, які залишаються незмінними, можуть використовуватися спільно. У macOS знімки застосовуються, зокрема, для локального відновлення попередніх версій файлів за допомогою Time Machine.[10][11]

Шифрування

[ред. | ред. код]

APFS передбачає три моделі роботи тому: без шифрування, з одним ключем шифрування та з окремими ключами для даних кожного файлу й чутливих метаданих. Залежно від пристрою та операційної системи використовуються режими AES-XTS або AES-CBC. У macOS шифрування тому поєднується з механізмами FileVault, які захищають доступ до даних за допомогою облікових даних користувача або ключа відновлення.[2][12]

Цілісність і захист від збоїв

[ред. | ред. код]

Для захисту структури файлової системи APFS обчислює контрольні суми метаданих (зокрема, за алгоритмом Fletcher) та зберігає узгоджені контрольні точки стану контейнера. Якщо запис нової контрольної точки було перервано, під час наступного монтування можна використати попередню придатну точку. Водночас звичайні користувацькі файли APFS не охоплює наскрізним контрольним підсумовуванням вмісту, як це роблять деякі інші файлові системи.[5][7]

Із macOS Big Sur (macOS 11) для системного тому використовується додатковий механізм підписаного системного тому (Signed System Volume, SSV). Він перевіряє криптографічні хеші системних файлів та підпис кореневого хешу. Цей захист стосується системного тому й не означає, що всі користувацькі дані на звичайних томах APFS отримали таку саму перевірку.[13]

Імена файлів та інші можливості

[ред. | ред. код]

APFS зберігає імена файлів у кодуванні UTF-8 і підтримує Юнікод. На macOS типовий формат тому не розрізняє великі й малі літери в іменах, але доступний також варіант із розрізненням регістру; на iOS файлова система розрізняє регістр. APFS зберігає початкове написання імен і враховує різні форми нормалізації Unicode під час їх пошуку.[5]

Серед інших можливостей APFS — розріджені файли (sparse files), швидкий підрахунок розміру каталогів, атомарні операції безпечного збереження та підтримка високоточної часової інформації. За документацією Apple, максимальний розмір окремого файлу становить 263 байтів (8 ЕіБ), а часові мітки мають наносекундну точність.[14]

Використання та сумісність

[ред. | ред. код]

APFS застосовується на пристроях Apple з macOS, iOS, iPadOS, watchOS, tvOS та visionOS. Хоча її оптимізовано для флешпам'яті й SSD, вона може працювати також на механічних жорстких дисках та зовнішніх накопичувачах. Для macOS передбачені варіанти форматування томів з шифруванням і без нього, із розрізненням регістру імен або без нього.[1][5][8]

У сучасних випусках macOS система й змінювані дані користувача розміщуються на окремих томах APFS, об'єднаних у групу. Окремі службові томи забезпечують завантаження, відновлення системи й роботу віртуальної пам'яті.[15]

Починаючи з macOS Big Sur, APFS підтримується також як формат дисків резервного копіювання Time Machine; для нових резервних дисків Apple рекомендує APFS або зашифрований APFS. Це відрізняється від раннього експериментального стану системи, коли такі диски не підтримувалися.[16][11]

Обмеження

[ред. | ред. код]

APFS не має вбудованого механізму автоматичної дедуплікації однакових даних у довільних файлах: її механізм клонування заощаджує місце для копій, створених із відповідним використанням спільних блоків. Також вона не підтримує жорстких посилань на каталоги та не реалізує програмний RAID безпосередньо засобами файлової системи, хоча томи APFS можна використовувати поверх деяких RAID-конфігурацій.[5]

Зберігаючи цілісність метаданих, APFS сама по собі не забезпечує перевірки контрольних сум усіх блоків користувацьких файлів. Криптографічна перевірка системного тому SSV є окремою можливістю, а не загальною властивістю кожного тому APFS.[5][13]

Див. також

[ред. | ред. код]

Примітки

[ред. | ред. код]
  1. 1 2 Apple File System Guide: Introduction. Apple Developer (англ.). Apple. Процитовано 10 листопада 2026.
  2. 1 2 3 Apple File System Guide: Features. Apple Developer (англ.). Apple. Процитовано 10 листопада 2026.
  3. ↑ Introducing Apple File System (PDF). WWDC 2016, Session 701 (англ.). Apple. Процитовано 10 листопада 2026.
  4. ↑ About the security content of iOS 10.3. Apple Support (англ.). Apple. 27 березня 2017. Процитовано 10 листопада 2026.
  5. 1 2 3 4 5 6 7 Apple File System Guide: Frequently Asked Questions. Apple Developer (англ.). Apple. Процитовано 10 листопада 2026.
  6. ↑ macOS Mojave 10.14 Release Notes. Apple Developer (англ.). Apple. Процитовано 10 листопада 2026.
  7. 1 2 3 Apple File System Reference (PDF) (англ.). Apple. 22 червня 2020. с. 7—8, 25—26, 70—71. Процитовано 10 листопада 2026.
  8. 1 2 Add, delete, or erase APFS volumes in Disk Utility on Mac. Apple Support (англ.). Apple. Процитовано 10 листопада 2026.
  9. ↑ About Apple File System. Apple Developer (англ.). Apple. Процитовано 10 листопада 2026.
  10. ↑ View APFS snapshots in Disk Utility on Mac. Apple Support (англ.). Apple. Процитовано 10 листопада 2026.
  11. 1 2 Back up your files with Time Machine on Mac. Apple Support (англ.). Apple. Процитовано 10 листопада 2026.
  12. ↑ Volume encryption with FileVault in macOS. Apple Platform Security (англ.). Apple. 28 січня 2026. Процитовано 10 листопада 2026.
  13. 1 2 Signed system volume security. Apple Platform Security (англ.). Apple. 13 травня 2022. Процитовано 10 листопада 2026.
  14. ↑ Apple File System Guide: Volume Format Comparison. Apple Developer (англ.). Apple. Процитовано 10 листопада 2026.
  15. ↑ Role of Apple File System. Apple Platform Security (англ.). Apple. Процитовано 10 листопада 2026.
  16. ↑ Backup disks you can use with Time Machine. Apple Support (англ.). Apple. Процитовано 10 листопада 2026.

Посилання

[ред. | ред. код]