Главная » Подключение » Восстановление данных с жесткого диска gpt. Восстановление данных с GPT и MBR разделов с помощью Hetman Partition Recovery. Видео о программе

Восстановление данных с жесткого диска gpt. Восстановление данных с GPT и MBR разделов с помощью Hetman Partition Recovery. Видео о программе

Стиль разделов жесткого диска GPT дает больше преимуществ, чем устаревший стандарт MBR, как коммерческому сектору, где используется оборудование для хранения гигантских объемов данных, так и обычным пользователям. Плюсы GPT-дисков для обывателей – лучшее быстродействие и большая вероятность восстановления случайно или аварийно уничтоженных данных. Если материнская плата компьютера поддерживает режим работы (непременное условие работы с GPT-дисками), но по какой-то причине жесткий диск со сформированной структурой разделов и хранящимися данными имеет стиль разделов MBR, все можно изменить. Не без вреда для операционной системы, но с сохранением структуры диска и файлов на несистемных разделах. Windows все же придется переустанавливать. Конечно, есть способ обойтись и без переустановки Windows, но он усложнен процессом восстановления способности текущей операционной системы загружаться. Ведь придется вручную создавать раздел восстановления и шифрованный раздел EFI (используются вместо загрузочного раздела «Зарезервировано системой» на MBR-диске), а затем восстанавливать загрузчик систем UEFI. При переустановке Windows все эти моменты будут решены автоматически. Плюс к этому, получим чистую операционную систему без старых ошибок работы.

Итак, ниже рассмотрим, как установить Windows на конвертированный из MBR в GPT диск без потери данных на несистемных разделах. Но прежде поговорим о том, как происходит установка Windows на GPT-диск с потерей разметки и хранящихся данных.

1. Установка Windows на GPT-диск с потерей данных

Сохранять структуру разделов и данные MBR-диска не всегда есть смысл. Например, при подключении жесткого диска, приобретенного на вторичном рынке. Что делать в таком случае? Поскольку BIOS UEFI работает только с GPT-дисками, необходимо, соответственно, чтобы этот режим работы прошивки был активен, а процесс установки Windows проводился с загрузочной флешки UEFI. К этим моментам мы еще вернемся при рассмотрении способа установки Windows на GPT-диск без потери данных и разделов. Но если жесткий диск изначально был инициализирован как MBR, то в процессе установки Windows при включенном интерфейсе BIOS UEFI получим следующее уведомление.

Что сделать, чтобы установка Windows на GPT-диск стала возможной? Нужно удалить полностью все разделы на жестком диске...

И устанавливать операционную систему на нераспределенное дисковое пространство. Или с помощью кнопки «Создать» сформировать на диске несколько разделов, чтобы указать в качестве места установки системы только один из них, а остальные использовать как файлохранилища.

В процессе установки Windows жесткий диск будет автоматически преобразован в GPT.

Это способ установки Windows на GPT-диск с потерей структуры разделов и хранящихся данных. А как быть, если MBR-диск заполнен информацией, и ее много? Даже если важные данные есть куда временно перенести – на другой жесткий диск или съемный носитель, при больших объемах процедура переноса файлов туда и обратно займет время. Если данные и вовсе некуда временно поместить, выход только один – конвертирование диска из MBR в GPT с дальнейшей переустановкой Windows на системный раздел.

2. Подготовительный этап

Прежде чем приступить к процессу конвертирования, необходимо проверить кое-какие моменты и подготовить рабочие инструменты. Нужно:

  • Убедиться, что BIOS действительно поддерживает интерфейс UEFI;
  • Записать загрузочную флешку UEFI с установочным процессом 64-битных Windows 7, 8.1 и 10 (делается с помощью программы Rufus или утилиты для скачивания дистрибутива версий системы 8.1 и 10 Media Creation Tool);
  • Сохранить важные данные текущей Windows, в частности, файлы в папках пользовательского профиля, экспортировать настройки значимых программ, извлечь лицензионные ключи и проделать прочие действия, как перед обычным процессом переустановки операционной системы;
  • Скачать с официального сайта и установить на компьютер (в текущую Windows на MBR-диске) программу AOMEI Partition Assistant, с помощью которой и будет осуществлен процесс конвертирования жесткого диска из MBR в GPT. Программу можно скачать в бесплатной редакции Standard Edition, она в числе прочего функционала предусматривает возможность преобразования стилей разделов диска.

3. Конвертирование диска из MBR в GPT

Проведя все перечисленные выше действия и подготовив необходимые инструменты, запускаем AOMEI Partition Assistant. В нашем случае в окне программы увидим два жестких диска компьютера: один из них уже успешно прошел процедуру конвертирования из MBR в GPT, а другому, MBR-диску ее еще только предстоит пройти.

На MBR-диске вызываем контекстное меню, выбираем команду «Преобразовать в GPT-диск», затем в окошке подтверждения запуска операции жмем «Ок».

Появится программное окошко с советом прежде запуска операции убедиться, что материнская плата поддерживает режим работы BIOS UEFI. В этом окошке также сообщается, что если конвертируемый диск является загрузочным, и на нем установлена операционная система, последняя по завершении операции больше не сможет загрузиться. Вот почему важно всерьез отнестись к подготовительному этапу операции и проделать все рекомендуемые в предыдущем пункте статьи действия. Жмем «Да».

В левом верху окна нажимаем кнопку «Применить».

Нажатие «Да» – это точка невозврата, текущая Windows больше не сможет загрузиться, поскольку жесткий диск по завершении операции будет преобразован в GPT. О завершении операции оповестит такое вот программное окно, в котором единственным возможным действием будет нажатие «Ок».

Перед нажатием «Ок» проверяем, подключена ли загрузочная флешка UEFI с установочным процессом Windows. После нажатия «Ок» компьютер перезагрузится.

4. Настройка BIOS UEFI

При следующем запуске компьютера нужно сразу же войти в BIOS, чтобы выставить режим работы UEFI. В BIOS материнской платы Asus это делается следующим образом. В главном меню жмем либо кнопку «Дополнительные настройки», либо клавишу F7.

Нажатием «Ок» подтверждаем вход в расширенный режим. Переходим во вкладку «Загрузка», далее выбираем раздел «CSM» (он должен быть включен, то есть напротив него должно стоять значение «Enabled»). В графе «Параметры загрузочных устройств» устанавливаем значение «UEFI и Legacy UpROM» – режим совместимости, при котором возможна загрузка как в режиме UEFI, так и в Legacy. Затем с помощью кнопки «Back» выходим из настроек раздела.

Если на компьютер будет устанавливаться Windows 7, необходимо еще (Secure Boot) – войти в раздел «Безопасная загрузка» и в графе «Тип ОС» установить значение «Другая ОС». И выйти на уровень вверх кнопкой «Back».

В перечне устройств загрузки выбираем загрузочную флешку UEFI.

Сохраняем внесенные в BIOS изменения: жмем клавишу F10 и выбираем «Да».

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

  • Установка режима работы UEFI (или режима совместимости, если таковой поддерживается, как в рассмотренном примере);
  • Отключение безопасной загрузки для операционных систем, не соответствующим сертификатам стандарта UEFI;
  • Выставление приоритета загрузки с флешки UEFI;
  • Сохранение настроек.

5. Установка Windows на GPT-диск

После сохранения настроек BIOS UEFI компьютер загрузится с флешки. Проходим начальные этапы процесса установки и немного задержимся на выборе места установки. Чтобы данные на несистемных разделах диска остались в целости и сохранности, необходимо удалить только два раздела, которые на MBR-диске отвечали за запуск Windows – первый загрузочный раздел с объемом в 350 или 500 Мб (в зависимости от версии Windows) и второй раздел, на котором была установлена сама операционная система. Чтобы не ошибиться, особенно в случае, если жестких дисков к компьютеру подключено несколько, лучше ориентироваться на размер разделов. В нашем примере только что конвертированный из MBR в GPT диск процессом установки Windows определяется как Диск 0. Удаляем сначала первый раздел с помощью кнопки «Удалить».

Затем повторяем процедуру со вторым разделом.

Делаем клик на образовавшемся в результате удаления разделов незанятом пространстве и жмем кнопку «Далее» для продолжения процесса установки Windows.

Отличного Вам дня!

Если в ходе установки Windows у вас появилась надпись "Установка Windows на данный диск невозможна. Выбранный диск имеет стиль разделов GPT", то значит ваш винчестер действительно разбит производителем на разделы GPT, (а не MBR, как обычно, для Windows 7 или XP), скорее всего диск предназначался для установки Windows 10 или 8.1 х64 бит.

Если у вас компьютер или ноутбук с новым BIOS (имеющим графический интерфейс), то вам просто достаточно перенастроить BIOS под установку Windows на GPT изменив в BIOS параметры: включить загрузку UEFI вместо CSM (Compatibility Support Mode) обычно находится в BIOS Features или BIOS Setup; режим работы SATA установить в AHCI вместо IDE (обычно настраивается в разделе Peripherals). После этого вы сможете установить 64х битный Windows с загрузочного диска, как обычно, или с загрузочной флешки, если она поддерживает загрузку UEFI (создание флешки с поддержкой UEFI смотри здесь) . Если же вам надо установить 32х битную Windows или у вас BIOS старого типа, то читайте далее статью.

Если ваш случай не попадает под предыдущий абзац, то ситуация может оказаться не из приятных, потому как эта надпись появляется в тот момент, когда вы нажимаете "Создать раздел" в ходе установки Windows, и к этому моменту вы уже уничтожили старую загрузочную запись, а это значит, что доступ ко всем вашим данным на всех дисках винчестера отсутствует, т.к. старая система уже уничтожена, а новую Windows 7 или XP вы поставить не сможете не преобразовав предварительно винчестер в MBR. Дело в том, что при преобразовании HDD в MBR, все данные на всех дисках (а не только на системном диске С:) будут уничтожены. Если у вас остались на диске важные данные, которые вы никуда не перенесли (понадеявшись, что они сохранятся на диске D:), то вам придется отложить установку Windows 7 или XP и заняться сохранением оставшихся на винчестере данных, что можно сделать двумя способами: либо загрузитесь с загрузочного диска (например Live CD c поддержкой GPT((образ можно найти в интернете)) и перебросьте данные на флешки или DVD диски; либо установите на время систему, поддерживающую GPT - Windows 10 или 8.1, (образ также можно найти в интернете) и также сохраните данные на другие носители, первый способ явно быстрее, но в любом случае это займет весьма много времени, если ничего особо ценного на диске не было, лучше просто пожертвуйте данными. Итак, вопрос с данными решен, переходим к установке Windows 7 или XP, на ваш винчестер, точнее к его преобразованию из GPT в MBR.

Самый простой способ конвертации диска из GPT в MBR - при помощи средств, входящих в комплект установочного пакета Windows (ДАННЫЕ БУДУТ ПОТЕРЯНЫ СО ВСЕГО ВИНЧЕСТЕРА, А НЕ ТОЛЬКО С ДИСКА С:). Итак, когда вы, в процессе установки системы, увидели надпись "Установка Windows на данный диск невозможна. Выбранный диск имеет стиль разделов GPT", закройте это окно и нажмите комбинацию клавиш "Shift + F10" - откроется командная строка в которой нужно ввести следующие команды:

  • diskpart (вход в программу управления дисками)
  • list disk (в результате выполнения команды вы увидите список ваших дисков запомните номер диска, который нужно конвертировать)
  • select disk N (где N — номер диска из предыдущей команды)
  • clean (после выполнения этой команды данные будут уничтожены)
  • convert mbr (диск будет преобразован в MBR)
  • create partition primary (создание нового раздела)
  • active (выбор активного раздела)
  • format fs=ntfs quick (форматирование)
  • assign (монтирование)
  • exit (выход)

Теперь нажмите «Обновить» для обновления конфигурации дисков. Дальнейшая установка происходит в обычном режиме.

17 апреля 2011 в 18:39

Восстановление убитых MBR и таблицы разделов

  • *nix

0. Intro.

Ситуация следующая. Есть винт на 160Гб. На нем 2 раздела - 40Гб и 120Гб. С целью установки убунты как второй системы была произведена разбивка 120Гб -> 100+10+2+8.
Итоги
1. При загрузке системы выводится сообщение MBR helper not found;
2. fdisk показывает один большой 160Гб диск.

Дураку понятно, что это начало веселой ночи.
Далее, под катом, решения вопроса.

1. Восстановление таблицы разделов

1.1. Parted magic
Данный LiveCD\USB дистрибутив , размером в 100Мб несет в себе огромную кучу софта, для работы с дисками. От разбивки, до восстановления.
Из них всех, нам нужны будут gpart , testdisk , fdisk и ms-sys .
1.2. Gpart
gpart - это утилита, сканирующая по-секторно диск на наличие разделов, которые присутствуют на носителе, но отсутствуют в таблице. В своей работе, она игнорирует уже существующую таблицу (если присутствует). Программа разаботана немецким программистом Michail Brzitwa и больше им не поддерживается. Вялотекущая разработка ведется командами Fedora и Debian. Текущая версия - 0.1h.

Утилита позволяет наиболее быстро и легко восстановить таблицу разделов, но она несет в себе несколько недостатков. Во-первых, разработка была давно заброшена, во-вторых, она иногда не совсем корректно определяет разделы.

Gpart может работать в 2-х режимах. Это быстрый анализ и подробное сканирование. В некоторых случаях, первого режима достаточно. Мы же будем смотреть на второй.

Gpart -if /dev/sda

-i - интерактивный режим. На каждую найденную партицию будет задан вопрос, сохранять ее, либо пропустить.
-f - полный скан диска.

После, довольно продолжительного времени, будет создан отчет с возможными разделами. Его-то и нужно обязательно максимально внимательно просмотреть перед записью.
Пример отчета (не мой):

Begin scan...
Possible partition(DOS FAT), size(1907mb), offset(0mb)
Possible partition(SGI XFS filesystem), size(5730mb), offset(1907mb)
End scan.
Checking partitions...
Partition(DOS or Windows 95 with 32 bit FAT, LBA): primary
Partition(Linux ext2 filesystem): primary
Ok.
Guessed primary partition table:
Primary partition(1)
type: 012(0x0C)(DOS or Windows 95 with 32 bit FAT, LBA)
size: 1907mb #s(3906544) s(16-3906559)
chs: (0/1/1)-(1023/19/16)d (0/1/1)-(12207/19/16)r
Primary partition(2)
type: 131(0x83)(Linux ext2 filesystem)
size: 5730mb #s(11736000) s(3906560-15642559)
chs: (1023/19/16)-(1023/19/16)d (12208/0/1)-(48882/19/16)r
Primary partition(3)
type: 000(0x00)(unused)
size: 0mb #s(0) s(0-0)

Primary partition(4)
type: 000(0x00)(unused)
size: 0mb #s(0) s(0-0)
chs: (0/0/0)-(0/0/0)d (0/0/0)-(0/0/0)r

Если все ОК, то соглашаемся на запись в таблицу разделов, скрещиваем пальцы и перезагружаемся.
В моем случае, программа определила разделы, которые были до разбивки (40 и 120), что не подходило и заставило искать альтернативные способы восстановления.

1.3. testdisk
Note: подробнее эта утилита описана в , здесь не буду повторяться.

Эта утилита аналогична предыдущей, но имеет ряд плюсов:
1. более свежая и активно поддерживается;
2. субъективно, работает намного быстрее;
3. функциональнее;
4. есть простой консольный интерфейс на базе ncurses.

Поехали!
1. в первом окне выбираем Create a new log file;
2. выбираем нужный диск (/dev/sda) -> Proceed;
3. отмечаем тип разделов как Intel;
4. выбираем Analyse current partition structure and search for lost partitions;
5. если найденные разделы верны, жмем Backup и переходим к пункту 6, есть возможность быстро пересканировать диск, если где-то ошибка (Quick search);
6. здесь уже виден зеленый список с разделами. Если ок, то записываем, иначе запускаем Deep search.;

В моем случае, результат был аналогичен результату gpart, что есть некорректен.
Запустив Deep search, выждав около 40 минут я получил ответ, от которого на душе так нехило отлегло.
Было найдено несколько партиций, которые накладывались одна на другую (это были изначальная (до манипуляций) 120Гб и новая, на 100Гб). Отметив ненужную, как удаленную, я записал таблицу на диск и перезагрузился. К счастью, все обошлось и компьютер вернулся к состоянию, который был изначально, а я мог с чистой совестью лечь спать.

3. Восстановление MBR

Для этой задачи, у нас в арсенале есть тулза ms-sys.
Сперва узнаем, что с нашей MBR.

Ms-sys /dev/sda
/dev/sda has an x86 boot sector
it is unknown boot sector

Теперь видно, что на данном диске нет загрузочного сектора.
Утилита может работать с MBR различных операционных систем. Список можно получить, запустив программу без агрументов. В моем случае, необходим был от Windows 7.
Записываем MBR на диск:

Ms-sys -7 /dev/sda
Windows 7 master boot record successfully written to /dev/sda

Проверяем:

Ms-sys /dev/sda
it is Microsof 7 master boot record, like the one this
program creates with the switch -7 on a hard disk device.

Вот и все, нужная MBR установлена и можно перезагружаться.

3. Outro

Этот пост пример того, как на пустом месте можно создать себе проблему и полночи заниматься не тем, чем надо. Но это дало неоценимый опыт, который я постарался изложить здесь.
Возможно, кому-нибудь он пригодится. Ведь в такую ситуацию попасть очень не сложно, а детального мануала особо-то и нет.

В этой статье мы разберемся, как восстановить загрузчик Windows 10 или Windows 8.1 на компьютере, работающем в режиме . Повреждение загрузчика Windows 8 может быть вызвано установкой второй ОС (Dual Boot - конфигурациях), некорректными действиями «специалиста» при восстановлении системы после сбоя, удалением “лишних” данных на скрытых разделах, вирусом-вымогателем и рядом других причин.

Ошибка загрузки The boot configuration data for your PC is missing: EFI\Microsoft\Boot\BCD

О повреждении загрузчика Windows 10/8.1, установленной в режиме UEFI, может свидетельствовать невозможность загрузки системы и появление нового голубого «экрана смерти» с ошибкой:

The boot configuration data for your PC is missing or contains errors.
File:\EFI\Microsoft\Boot\BCD
Error code: 0xc000000f

В русской версии Windows ошибка может быть такая:

Ваш компьютер нуждается в ремонте
Данные конфигурации загрузки для вашего ПК отсутствуют или содержат ошибки
Файл:\EFI\Microsoft\Boot\BCD
Код ошибки: 0xc000000f

Все это может свидетельствовать о повреждении или даже полном удалении конфигурации загрузчика Windows 8 — Boot Configuration Data (BCD) . Восстановить загрузчик BCD одним из рассмотренных ранее способов ( , ) не получится: при попытке выполнить команду bcdedit система выдает ошибку:

The boot configuration data store could not be found.
The requested system device cannot be found

Дело в том, что конфигурация загрузчика BCD BCD в Windows 10 / 8, установленной в режиме UEFI, хранится на отдельном скрытом разделе EFI (размером 100 мб с файловой системой FAT32), который утилита bcdedit не видит, и соответственно не может управлять конфигурацией загрузчика на нем.

Автоматическое восстановление загрузчика Windows

Процедура автоматического восстановления загрузчика, зашитая в , как правило в таких случаях бессильна. Но попробовать все-же стоит:

Ручное восстановление загрузчика Windows с помощью загрузочного диска

Перейдем к процедуре рунного восстановления загрузчика Windows на системе с EFI.

Итак, чтобы восстановить конфигурацию загрузчика (BCD), необходимо загрузится с оригинального установочного DVD диска с Windows 8 (или диска восстановления или ) и открыть окно командной строки: выбрав Восстановление системы -> Диагностика -> Командная строка (System Restore — > Troubleshoot->Command Prompt), или нажав комбинацию клавиш Shift+F10 ).

Запустим diskpart:

Выведем список дисков в системе:

Выберем диск, на котором установлена ваша Windows (если жесткий диск в системе один, его индекс должен быть равен 0):

Выведем список разделов в системе:


В нашем примере видно, что раздел EFI (его можно определить по размеру 100 Мб и файловой системе FAT32) имеет индекс volume 1, а загрузочный раздел с установленной системой Windows (это может быть как Windows 10 так и Windows 8.1/8) - volume 3.

Назначим скрытому EFI разделу произвольную букву диска:

assign letter M:

Должна появится строка, свидетельствующая об успешном назначении буквы диска разделу EFI:

DiskPart successfully assigned the drive letter or mount point.

Завершаем работу с diskpart:

Перейдем в каталог с загрузчиком на скрытом разделе

cd /d m:\efi\microsoft\boot\

В данном случае m: это буква диска, присвоенная разделу UEFI чуть выше. Если каталог \EFI\Microsoft\Boot\ отсуствует (ошибка The system cannot find the path specified), попробуйте следующие команды:

cd /d M:\ESD\Windows\EFI\Microsoft\Boot\

Пересоздадим загрузочный сектор на загрузочном разделе:

bootrec /fixboot

Удалим текущий файл с конфигурацией BCD, переименовав его (сохранив старую конфигурацию в качестве резервной копии):

С помощью утилиты bcdboot.exe пересоздадим хранилище BCD, скопировав файлы среды загрузки из системного каталога:
bcdboot C:\Windows /l en-us /s M: /f ALL
где, C:\Windows – путь к каталогу с установленной Windows 8.
/f ALL – означает что необходимо скопировать файлы среды загрузки, включая файлы для компьютеров с UEFI или BIOS (теоретическая возможность загружаться на EFI и BIOS системах)
/l en-us — тип системной локали. По умолчанию используется en-us — английский язык (США) .

Совет . В случае использования локализованной русской версии Windows 10 / Windows 8 команда будет другая:
bcdboot C:\Windows /L ru-ru /S M: /F ALL

Возможные ошибки:

  • BFSVC Error: Can not open the BCD template store . status – – проверьте правильность введенной команды и используется ли у вас локализованная Windows, в этом случае нужно правильно указать код языка системы (local language code)
  • BFSVC Error: Error copying boot files Last Error = 0x570 – попробуйте выполнить проверку диска с помощью команды CHKDSK M: /F

Выполните команды:

bootrec /scanos
bootrec /rebuildbcd

Осталось перезагрузить компьютер, после чего в выборе устройств загрузки должен появиться пункт Windows Boot Manager в котором можно выбрать загрузку нужной ОС. Конфигурация загрузчика BCD успешно восстановлена!

Поддержку gpart recover в head/. Через две недели планирую сделать MFC в 8-stable, если всё будет хорошо. Но хотелось бы успеть до заморозки кода перед началом подготовки к релизу, иначе в 8-ку это всё попадёт уже нескоро.

Немного подробнее. Прежде всего стоит заметить, что теперь при обнаружении повреждений метаданных таблица GPT будет помечена как corrupt и с ней будут запрещены любые действия. Т.е. если раньше вы получали в консоль сообщения о повреждённой GPT и могли по-просту не обращать на них внимания, то теперь игнорировать не получится:)

Запрещать любые действия было бы не логично, если не предложить что-то взамен. Взамен предлагается своего рода гарантия, что вы ничего случайно не сломаете, а так же возможность починить таблицу разделов, либо, если она вам не нужна - уничтожить её совсем. Для возможности уничтожения таблицы пришлось переделать "gpart destroy -F". Теперь форсированное уничтожение выполняется внутри ядра, а не в userspace как раньше.

Что бы знать какие типы повреждений возможно восстановить в GPT при помощи gpart, нужно иметь представление о том, как устроена GPT. Если коротко, то состоит она из заголовка и самой таблицы разделов. Всё это дублируется. Заголовок основной таблицы находится во втором секторе диска, за ним следует таблица разделов, её размер может быть различным. Заголовок резервной таблицы находится в последнем секторе, таблица располагается в предшествующих ему секторах. Содержание таблиц идентично и должно иметь одинаковую контрольную сумму. А вот заголовки отличаются, в них сохраняются номера секторов, в которых находится сам заголовок и его копия, номер начального сектора таблицы и границы пространства для использования партициями. Часть этой информации отображается в выводе команды gpart list :

> gpart list ada1 Geom name: ada1 state: OK fwheads: 16 fwsectors: 63 last: 320173022 first: 34 entries: 128 scheme: GPT Здесь first и last - номера секторов, ограничивающих доступное пространство для разделов GPT, entries - максимальное количество записей в таблице, другими словами максимальное количество партиций.

Так же, ещё одним обязательным условием для работы с GPT является наличие PMBR, который занимает первый сектор. Если повредить содержимое PMBR, то класс PART не будет даже искать GPT на диске. Такова особенность. Поэтому если ваша GPT не обнаруживается совсем, ядро не выдаёт никаких сообщений, связанных с GPT, первым делом стоит восстановить PMBR. Его копию можно найти в файле /boot/pmbr. Нужно всего лишь записать его в первый сектор диска. Это автоматически инициирует поиск метаданных различными GEOM классами, в том числе и GEOM_PART_GPT.

Теперь о возможных повреждениях. Первое - это повреждение основного заголовка или таблицы GPT. При обнаружении такого повреждения ядро выдаст сообщение:
GEOM: provider: the primary GPT table is corrupt or invalid. GEOM: provider: using the secondary instead -- recovery strongly advised. Здесь provider - это имя диска, например ad0. Кроме этого сообщения, которое обычно можно увидеть только во время загрузки системы, о том что ваша GPT повреждена могут расказать команды gpart show , list и status .
> gpart show => 34 1250263661 ada0 GPT (596G) 34 256 1 freebsd-boot (128K) 290 8388608 2 freebsd-swap (4.0G) 8388898 1241874797 3 freebsd-zfs (592G) > gpart list ada0 | grep state state: CORRUPT Следующий тип - повреждение резервной копии заголовка или таблицы GPT. Как частный случай сюда же относится вариант несоответствия резервной и основной копий (например, когда в основной копии заголовок и таблица с одними данными, а в резервной - с другими, но сами по себе они являются вполне корректными). В это случае GPART просто воспользуется данными из основной копии. Сообщение от ядра в этом случае будет таким:
GEOM: provider: the secondary GPT table is corrupt or invalid. GEOM: provider: using the primary only -- recovery suggested. Третий случай, когда таблица GPT будет помечена как повреждённая - это неверное расположение заголовка резервной копии GPT. Такое может случится, например если у вас GPT создана на каком-то виртуальном носителе, который умеет расширяться путём добавления новых дисков. Либо, просто, например, вы создали GPT на gmirror устройстве, но забыли загрузить класс geom_mirror. В этом случае размер провайдера увеличится, так как gmirror резервирует пространство под свои метаданные.

Теперь, собственно про восстановление. Всё что нужно сделать - правильно выбрать носитель, на котором восстанавливать GPT и выполнить команду:
# gpart recover ada0 В моём примере это ada0 . Почему я выделил слово "правильно "? Вернёмся к примеру, в котором GPT создана поверх gmirror. Так вот, если забыть загрузить gmirror, то GPT будет найдена на том диске, на котором создан gmirror. И соответсвенно, если выполнить gpart recover для этого диска, то все параметры заголовка GPT будут перерасчитаны, а значит изменится и значение last - границы последнего доступного сектора, а так же, в последний сектор диска будет записан заголовок резервной копии GPT, который уничтожит метаданные gmirror. Хорошо, если это именно то, чего вы хотели:)

Подитожив всё написанное выше, хочется ещё раз напомнить, что восстановление данных это ответственный процесс, нельзя делать его не обдумав. Это относится не только к теме данной заметки.



Предыдущая статья: Следующая статья:

© 2015 .
О сайте | Контакты
| Карта сайта