Примхливий recovery hd в lion як його не втратити і як його повернути - проект appstudio

Примхливий recovery hd в lion як його не втратити і як його повернути - проект appstudio
Новинкою OS X Lion став Recovery HD - спеціальний прихований розділ відновлення, який створюється на жорсткому диску по сусідству з основним розділом, на який ви ставите систему. Призначення цього розділу досить широко: це і можливість перевстановлення системи, можливість переразметіть диск, виконати команду в терміналі, відновитися з резервної копії Time Machine і навіть доступ до Safari. Загалом, Recovery HD дозволяє робити приблизно те ж, що раніше дозволялося здійснювати з інсталяційного DVD системи. На всіх нових Маках цей розділ - взагалі єдиний спосіб переустановлення системи, тому що ніякими фізичними носіями нинішні комп'ютери Apple взагалі не комплектуються.

Все б здорово, але з розділом відновлення в Apple перемудрили. Мало того, що він занадто надійно приховано від очей, так він ще й норовить мимовільно піти при внесенні будь-яких змін в структуру розділів диска. До цього також треба додати конфлікти з Помічником Boot Camp - то розділ відновлення заважає ставити Windows, то навпаки; іншими словами, тепер у маководов є нове джерело головного болю. Сьогодні ми хотіли б прояснити ситуацію навколо цього розділу і розповісти, як зробити його резервну копію, а також як його можна відновити в разі потреби.

Найголовніша проблема Recovery-розділу - його скритність. Ви не побачите його ні в Finder, ні в будь-яких інших файлових менеджерах. Його немає навіть в Дисковою утиліті. Побачити його можна лише за термінальною команді diskutil list. змонтувати - по термінальній команді diskutil mount «Recovery HD». а більш-менш зручний спосіб що-небудь з ним зробити полягає в активації меню налагодження Дисковою утиліти через Термінал командою:

[Php] defaults write com.apple.DiskUtility DUDebugMenuEnabled 1 [/ php]

Але і цього недостатньо: треба буде також зайти в Дискову утиліту і в меню «Налагодження» включити опцію «Показати кожен розділ». Лише після цього розділ відновлення стане видно Дисковою утиліті:

Примхливий recovery hd в lion як його не втратити і як його повернути - проект appstudio

Цього вже достатньо, щоб прямо в Дисковою утиліті зробити резервну копію розділу відновлення в образ. Натисніть на панелі інструментів кнопку «Новий образ» і вкажіть надійне місце для зберігання цього образу.

Як бути, якщо раптом станеться страшне і ви втратите розділ відновлення? На жаль, тут все вже не так просто. Звичайно, ви можете через ту ж Дискову утиліту створити новий розділ на диску (для цього зліва вибираєте шуканий диск - саме диск, а не розділ на ньому, справа переходите на вкладку «Розділ диска» і натискаєте на плюсик, потім вводите розмір розділу). Хоча вихідний розмір розділу відновлення - 650 МБ, менше гігабайти під нього виділити вам Дискова утиліта не дасть. Втім, це не критично. Головне - обізву розділ Recovery HD. Перейменувати розділ можна з контекстного меню розділу в сайдбарі Finder або Path Finder.

Причина цього - ідентифікатор типу розділу в таблиці GUID. За замовчуванням всі створювані розділи позначаються як звичайні, а для того, щоб Mac OS X бачила, що перед нею саме розділ відновлення, потрібно присвоїти цього звичайного розділу інший ідентифікатор. Це теж робиться через Термінал. Саме цікаве, що для цього потрібно демонтувати весь диск, тому вам потрібно буде завантажитися з будь-якого зовнішнього носія (по ідеї, якщо у вас є зовнішній носій, то на Recovery HD можна сміливо забити, тільки якщо вам не потрібно повне шифрування диска через FileVault).

Припустимо, ви завантажилися з завантажувальної флешки і запустили Термінал з меню утиліт. Спочатку вам треба буде дізнатися, який номер диска і номер розділу відповідають тому розділу, який ви будете перетворювати в Recovery HD. Для цього вводите команду diskutil list. Бачите приблизно такий список:

Примхливий recovery hd в lion як його не втратити і як його повернути - проект appstudio
Знаходьте в переліку розділів той, який ви перетворюєте в Recovery HD. У колонці IDENTIFIER знаходите номера диска і розділу. Наприклад, якщо там написано disk4s2, то у вас диск №4 і розділ №2. Номер розділу - величина незмінна, а ось номер диска при наявності у вас декількох вінчестерів - річ мінлива, тому що при наступному завантаженні диски можуть пронумеровані вже інакше.

Потім ви вводите команду:

[Php] gpt -r show diskN [/ php]

N в команді вище міняєте на номер диска. Бачите карту розділів GPT для вибраного диска:

Примхливий recovery hd в lion як його не втратити і як його повернути - проект appstudio
Це все той же перелік розділів, але з цінною для нас додатковою інформацією. У стовпці index показані номери розділів - знаходите тут потрібний вам. Потім запам'ятовуєте і передплачуєте для нього значення, зазначені в шпальтах start і size. Перша цифра - це номер сектора диска, з якого починається розділ. Друга цифра - розмір розділу в секторах.

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

Спочатку ви відключаєте всі розділи на вибраному диску (N міняєте на номер диска)

[Php] diskutil unmountDisk diskN [/ php]

Потім видаляєте з таблиці розділів запис, що вказує на те, що на диску є розділ, який повинен стати розділом відновлення. M ви міняєте на номер цього розділу, N - на номер диска (ні в якому разі не переплутайте!):

[Php] gpt remove -i M diskN [/ php]

Потім знову відключаєте розділи:

[Php] diskutil unmountDisk diskN [/ php]

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

  • M ви міняєте на номер розділу на диску
  • START ви міняєте на номер стартового сектора, який ви дізналися по команді gpt -r show
  • SIZE - на розмір розділу в секторах з тієї ж команди
  • 426F6F74-0000-11AA-AA11-00306543ECAC - ідентифікатор таблиці розділів GUID, який відповідає розділу відновлення Apple. Вводити його потрібно точно так же, як написано в команді
  • N міняєте на номер диска (наприклад, disk4)

Сама команда виглядає так:

[Php] gpt add -i M -b START -s SIZE -t 426F6F74-0000-11AA-AA11-00306543ECAC diskN [/ php]

Якщо ви введете вірні дані, то сконвертіруете ваш звичайний розділ в Recovery HD. Якщо невірні ... краще не будемо про це :)

Так, щоб відключити меню налагодження в Дисковою утиліті, скористайтеся командою:

[Php] defaults write com.apple.DiskUtility DUDebugMenuEnabled 1 [/ php]

Забивати її потрібно з-під завантаженої системи.

Матеріали в тему