Основи Apple Fusion Drive: принципи організації та відновлення даних

Прагнучи знайти компроміс і запропонувати кращу продуктивність у порівнянні з традиційним жорстким диском за відносно низьку вартість, компанія Apple представила Fusion Drive – поєднання твердотілого і накопичувача на магнітних дисках, яке втілило в собі найкращі риси обох технологій, тобто сучасної флеш-пам'яті і класичного вінчестера. Однак істотне підвищення продуктивності, досягнуте завдяки Fusion Drive, іноді супроводжується різноманітними проблемами, які неминуче призводять до втрати даних і необхідності їх відновлення. Стаття покликана пояснити особливості даної технології зберігання і запропонувати деякі методи, які можна застосувати для відновлення втрачених з неї даних.


Що таке Fusion Drive?

Вперше реалізований в операційній системі Mountain Lion в кінці 2012 року, Fusion Drive наразі підтримується двома настільними комп'ютерами Apple – iMac та Mac Mini під управлінням macOS 10.8 і більш пізніх версій.

Fusion Drive – це інтелектуальна система автоматичного керування даними від Apple, яка об'єднує два різних цифрових носія – традиційний жорсткий диск і твердотілий накопичувач на основі технології SSD, що функціонують як єдиний логічний елемент і представлені кінцевому користувачу у вигляді одного тома в Finder.

Аналогічно до RAID 0, в якому дані розташовуються по всіх дисках масиву, дані у Fusion Drive розподіляються між двома елементами системи, але з однією ключовою відмінністю: простір для зберігання динамічно перерозподіляється залежно від частоти використання даних для досягнення максимальної ефективності – файли, до яких найчастіше здійснюється доступ, разом із системними файлами знаходяться на більш швидкому флеш-накопичувачі, в той час як рідко використовувані файли переміщуються до більш місткого жорсткого диска. В результаті система завантажується швидше, а також помітно скорочується час запуску додатків, якими користуються регулярно.

Фактично, в основу Fusion Drive покладено концепцію автоматизованого тірингу сховища (storage tiering), яка передбачає міграцію даних між різними пов'язаними пристроями зберігання відповідно до вимог продуктивності і ємності, при цьому Fusion Drive є її суто програмною реалізацією. Єдиним програмним компонентом Fusion Drive є менеджер логічних томів CoreStorage. CoreStorage служить додатковим рівнем абстракції між macOS і дисками/розділами Mac, які не передаються безпосередньо операційній системі, а об'єднуються в групи логічних томів. Це дозволяє створювати складені томи, в той час як Fusion Drive являє собою групу логічних томів, що складається з жорсткого диска і твердотілого накопичувача.

Підказка: Більше інформації про технологію Core Storage можна знайти у відповідній статті.

Організація даних

Як вже було зазначено, Fusion Drive складається з двох окремих дисків: жорсткого і твердотілого. Загальна ємність такого сховища дорівнює сумі ємності обох дисків. Типова конфігурація виглядає наступним чином:

dev/disk0 – фізичний SSD, що входить до групи логічних томів;

dev/disk1 – фізичний жорсткий диск, що входить до групи логічних томів.

dev/disk2 – логічний том, який включає в себе disk0 та disk1.

Як disk0, так і disk1 складаються із щонайменше трьох розділів: один невеличкий службовий EFI-розділ на початку диска, один об'ємний розділ з даними Fusion Drive в середині диска і розділ конфігурації системи macOS в кінці диска.

Розділ з даними Fusion Drive займає до 99% простору і зазвичай починається із сектора 409,640. Це єдиний розділ на дисках, що відноситься до Fusion Drive. Він також зберігає всі метадані, необхідні для того, щоб коректно зібрати увесь Fusion Drive і правильно прочитати його дані. Можна виділити три основні області метаданих:

Область із зашифрованими блоками знаходиться в кінці розділу з даними Fusion Drive і містить зашифровані метадані, необхідні для інтерпретації даних. Метадані на disk0 та disk1 шифруються різними ключами, їх вміст не повністю збігається, але однієї копії достатньо для коректної реконструкції даних.

Область заголовку тома розташована в нульовому і останньому секторах розділу з даними та зберігає його UUID (унікальний ідентифікатор) і UUID групи логічних томів, до якої він належить, а також розмір цього тома, ключі шифрування для зашифрованих блоків, які знаходяться в області із зашифрованими блоками, і розташування копій ярлику диска.

Область ярлику диска містить дескриптор тому, в якому зберігається розташування зашифрованих блоків, різноманітна інформацію про групу логічних томів в XML, включаючи її UUID (який відповідає значенню в заголовку тому), ім'я і список томів, з яких вона складається.

Всі користувацькі дані спочатку записуються на твердотілий накопичувач (disk0), поки він не стане майже повним – "буферна область" розміром близько 4 ГБ резервується для вхідних файлів. Після цього система починає заповнювати жорсткий диск (disk1), в той час як рідко використовувані елементи будуть переміщуватись із флеш-накопичувача на магнітний (і навпаки, часто використовувані – на SSD). Переміщення даних між disk0 та disk1 відбувається ланцюжками блоків у періоди простою системи (розмір одного блоку дорівнює 128 КБ, кількість блокових ланцюгів може досягати декількох мільйонів) і залежить безпосередньо від моделі доступу до даних, яка відстежується CoreStorage: якщо частота використання даних, які зберігаються на HDD, істотно зросла, їх буде перенесено на SSD.

Слід також зазначити, що "fusion" в даному випадку не є синонімом поняття "hybrid": гібридні архітектури дисків використовують відмінні методи на основі кешування даних, коли інформація в основному зберігається жорсткому диску, і тільки деякі алгоритмічно визначені елементи копіюються для підвищення продуктивності.

Переваги та недоліки

Забезпечуючи швидкість і миттєвий запуск, притаманний для SSD, та дешевий простір зберігання, характерний для жорстких дисків, Fusion Drive піклується про те, щоб якомога менше часу було витрачено на читання і запис даних, до яких регулярно здійснюється доступ. Разом з тим, технологія має зворотній бік, який також варто розглянути та взяти до уваги:

Fusion Drive не здатен досягти такої ж швидкості, як повноцінний SSD-накопичувач, особливо у роботі з більш старими файлами;

Fusion Drive підтримується тільки моделями iMac і Mac Mini. Згідно з повідомленнями, не очікується, що ця опція стане доступною для інших систем Mac;

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

Що може спричинити втрату даних?

Як і будь-який запам'ятовуючий пристрій, Fusion Drive може зіткнутися з проблемами під час роботи і втратити важливі дані. Окрім типових ситуацій, коли втрата даних викликана помилковим видаленням файлів або форматування сховища, серед найбільш поширених проблем зустрічаються наступні:

Fusion Drive представлений як два диски замість одного в Finder

У цьому випадку диски перестають бути пов'язаними і більше не функціонують як Fusion Drive, перетворюючи дані, які вони містять, на непридатні для використання. Причинами може бути неправильне застосування інструментів управління дисками, помилки у програмному забезпеченні або заміна одного з дисків.

Fusion Drive припиняє завантажуватись

Як правило, ця проблема виникає при відмові твердотілого накопичувача або жорсткого диска. Компонент HDD більш схильний до раптових збоїв, в той час як SDD зазвичай виходить з ладу поступово і видає попередження, такі як помилки запису, SMART-повідомлення і т. д. Втім, ключова особливість, притаманна Fusion Drive, полягає в тому, що навіть якщо тільки один з накопичувачів виходить з ладу, усе сховище втрачає працездатність і припиняє завантажуватись, залишаючи усі дані, навіть ті, що знаходяться на непошкодженому диску, нечитабельними.

Зникнення/недоступність розділу(-ів)

Ця проблема може бути викликана низкою причин, від пошкодження файлової системи через раптовий перебій у живленні чи помилку програмного забезпечення до некоректного використання утиліт керування дисками.

Пошкоджені сектори на жорсткому диску

Спроби виправити пошкоджені сектори або вирішити проблеми з пошкодженням за допомогою Disk Utility можуть призвести до серйозних логічних пошкоджень і незворотної втрати даних. Таким чином, важливі дані необхідно вилучити до процедури ремонту.

Особливості відновлення даних

Дані на Fusion Drive розподілені між двома дисками без жодного дублювання, а також надзвичайно фрагментовані. Частина блоків метаданих, необхідних для їх коректного зчитування, зберігається лише на SSD, а інша частина – на HDD, тому робота з Fusion Drive без належного зібрання сховища або за відсутності одного з компонентів не дасть результату, оскільки в такому випадку стає неможливо правильно упорядкувати всі фрагменти. Крім того, майже всі метадані файлової системи зберігаються на твердотілому накопичувачі, без яких не вдасться побудувати дерева файлу і каталогу. До того ж, принаймні одна копія області із зашифрованими блоками має бути успішно розшифрована за допомогою ключів шифрування, що зберігаються в заголовку тому.

Отже, повна відмова одного з дисків або серйозне пошкодження метаданих не залишає шансів на відновлення даних. В інших випадках втрачені файли можна відновити одним з таких способів:

  • фізичні дефекти диску не вдасться вирішити за допомогою програмного забезпечення, але деякі з них можна відремонтувати, якщо звернутись до надійного постачальника послуг з відновлення та обов'язково відправити обидва накопичувача;

  • у разі логічної проблеми сховище можна зібрати за допомогою UFS Explorer.

Будь ласка, керуйтеся інструкцією, щоб відновити дані з Apple Fusion Drive за допомогою UFS Explorer.

Останнє оновлення: 7 жовтня 2020