Перейти к содержимому

Как можно осуществить восстановление gpt разделов в случае сбоев

  • автор:

How To: Восстановление случайно поврежденной таблицы разделов GPT

Представим ситуацию, что у вас на сервере заменили вышедший из строя диск и вам необходимо восстановить работу RAID. Но у вас на «живом» диске таблица разделов не MBR, а Gе вы перепишете таблицу разделов и можете потерять данные. Именно «можете», но еще не потеряли. Восстановить таблицу разделов еще можно. Первое, что необходимо сделать — это сохранить текущую используемую таблицу разделов из памяти, на всякий случай:

# gdisk /dev/sda 

Нажимаем ‘b’ и пишем имя файла «/part.bin». Теперь пробуем восстановить таблицу на второй диск, чтоб не потерять данные:

# gdisk /dev/sdb 

Нажимаем ‘r’, затем ‘l’ и пишем имя нашего файла ‘/part.bin’. После этого смотрим, что у нас получилось нажав на ‘p’. Если данные похожи на правду, то можно проделать ту же операцию с sda. Но для начала я бы рекомендовал перестраховаться и ввести разделы в RAID, дождаться синхронизации и потом записать таблицу на диск sda. Но если вы не боитесь потерять данные, то можно попробовать сразу восстановить таблицу разделов из резервной копии GPT:

# gdisk /dev/sda 

Далее нажимаем ‘r’ и ‘b’. Утилита восстановит таблицу разделов GPT из ее копии на диске. Проверить можно нажав ‘p’. Таким образом, GPT гораздо надежнее MBR в плане защиты от потери данных и резервирования информации о таблице разделов. Поделиться: Diaspora ❄ Twitter ❄ Facebook ❄ LinkedIn ❄ HackerNews ❄ Email ❄ Reddit

Похожие записи:

  • 30+ Linux команд, которые необходимо знать
  • Текст в картинку в консоли
  • Консольные полезности 7
  • Консольные полезности 6
  • Консольные полезности 5

Как восстановить удаленный GPT (GUID) раздел на ноутбуке

В данной статье мы расскажем и покажем, как восстановить удаленный раздел GPT (GUID). Но для начала немного информации, чтобы понимать, что это такое.

Вначале немного теории, в которой покажу программу для восстановления раздела, а далее уже практика на конкретном примере. Читайте до конца.

Диагностика БЕСПЛАТНО.
+7 (812) 953-94-11, +7 (921) 984-75-12 (Каменноостровский пр-т, 42, м. Петроградская)

Что такое GPT (GUID)

GPT (GUID) – это новый стандарт размещения таблиц разделов на жестком диске. Он призван прийти на смену популярному MBR, который используется на многих ноутбуках и компьютерах в данное время.

Не будем вдаваться в подробности отличия одного от другого. Отметим только то, что GPT (GUID) работая в паре с интерфейсом EFI может принести некоторые неудобства.

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

Во-вторых, производители ноутбуков могут программно запретить запускать ноутбук с помощью других источников. А что делать, если случилась поломка ноутбука, потеря данных или удаление разделов?

Для решения данной проблемы, я предлагаю использовать очень простую, но в тоже время эффективную программу DMDE. Это программа рассчитана на поиск, редактирование и восстановление данных на жестком диске.

Бесплатную версию можно скачать на официальном сайте http://www.dmde.ru/. Только с помощью нее вы сможете увидеть удаленные разделы и файлы. Программа даже составит для вас список этих файлов с путями, как они находились на диске. А вот для полного восстановления необходимо приобрести ключ.

Программа DMDE поставляется как для 32-битных систем, так и для 64-битных, и может выглядеть в виде консоли.

Так и в виде стандартной программы, разработанной для ОС Windows.

Итак, у нас есть раздел «Н» 20 Гб с небольшим, правда не GPT (GUID), но это не важно. Отличия покажем на примере. Главное, что DMDE работает с этим стандартом.

Он расположен на физическом жестком диске SAMSUNG HD 103SI объемом 1000 Гб. На логическом диске лежит документ Word. Удалим этот раздел и по шагам проделаем работу по его восстановлению без потери данных.

Как восстановить GUID (GPT) раздел при помощи DMDE — инструкция

  1. Запускаем программу DMDE.
  2. В окне выбираем необходимый физический жесткий диск, на котором располагался удаленный раздел. В нашем случае это второе устройство.

Еще раз хочу ответить, что программа очень функциональна и позволяет восстанавливать не только разделы целиком со всем его содержимым, но и только те удаленные файлы, которые необходимы. Следует потратить немного времени, чтобы разобраться, как DMDE работает. Удачи.

GPT fdisk (Русский)

Состояние перевода: На этой странице представлен перевод статьи GPT fdisk. Дата последней синхронизации: 1 февраля 2022. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

GPT fdisk состоит из программ gdisk, cgdisk, sgdisk, и fixparts. Они представляет собой набор инструментов для разметки диска, созданный Родом Смитом. Они работают с дисками с глобальным уникальным идентификатором (GUID) с таблицей разделов (GPT), а не со старыми (и всё ещё более распространенными) таблицами разделов основной загрузочной записи (MBR).

gdisk, cgdisk и sgdisk имеют одинаковую функциональность, но предоставляют разные пользовательские интерфейсы. gdisk — текстовый и интерактивный режим, sgdisk — режим командной строки, и cgdisk — интерфейс на основе curses. Эта статья охватывает утилиты gdisk(8) и sgdisk(8) .

  • Для базовых функций разметки можно использовать cgdisk(8) с текстовым пользовательским интерфейсом.
  • На сайте GPT fdisk есть подробные пошаговые инструкции для gdisk, cgdisk, sgdisk и FixParts.

Установка

Список разделов

Чтобы просмотреть таблицы разделов и разделы на блочном устройстве, вы можете запустить gdisk, указав устройство (например: /dev/sda ), /dev/nvme0n1 , /dev/mmcblk0 , и т.д.):

# gdisk -l /dev/sda

или с помощью sgdisk:

# sgdisk -p /dev/sda

Резервное копирование и восстановление таблицы разделов

Перед внесением изменений в диск вы можете сделать резервную копию таблицы разделов и схемы разделов диска. Вы также можете использовать резервную копию, чтобы скопировать одну и ту же структуру разделов на несколько дисков.

Используя sgdisk, вы можете создать двоичную резервную копию, состоящую из защитной MBR, основного заголовка GPT, резервного заголовка GPT и одной копии таблицы разделов. В приведённом ниже примере таблица разделов /dev/sda сохраняется в файл sgdisk-sda.bin :

# sgdisk -b=sgdisk-sda.bin /dev/sda

Позже вы можете восстановить резервную копию, запустив:

# sgdisk -l=sgdisk-sda.bin /dev/sda

Если вы хотите клонировать структуру разделов вашего текущего устройства ( /dev/sda в данном случае) на другой диск ( /dev/sdc ) запустите:

# sgdisk -R=/dev/sdc /dev/sda

Если оба диска будут на одном компьютере, вам необходимо рандомизировать GUID диска и разделов:

# sgdisk -G /dev/sdc

Создание таблицы разделов и самих разделов

Первый шаг в разметке диска — создание таблицы разделов. После этого создаются собственно разделы в соответствии с желаемой схемой разметки.

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

Ниже показано, как использовать gdisk для выполнения как создания таблицы разделов, так и создания фактических разделов. Также вы можете использовать основанную на curses версию cgdisk, однако следующие инструкции к ней неприменимы. Смотрите cgdisk(8) для её использования.

gdisk автоматически выполняет выравнивание по 2048 512-байтовым секторам (1 МиБ) что должно быть совместимо со всеми расширенными форматами HDD и подавляющим большинством SSD.

Чтобы использовать gdisk, запустите программу с именем блочного устройства, которое вы хотите изменить. В этом примере используется /dev/sda :

# gdisk /dev/sda

Создание новой таблицы

Важно: Если вы создадите новую таблицу разделов на диске с данными, то все данные на нём будут удалены. Убедитесь, что это действительно то, что вы хотите сделать.

Чтобы создать новую таблицу разделов GUID и стереть все текущие разделы, напишите o в строке. Пропустите этот шаг, если нужная вам таблица уже создана.

Создание разделов

Создайте новый раздел с помощью команды n . Введите номер раздела, первый сектор, последний сектор и тип раздела.

Примечание: Рекомендации по размеру и расположению разделов можно почитать в статье Разметка дисков#Схема разметки.

Номер раздела

Номер раздела — это номер, присвоенный разделу, например, раздел с номером 1 на диске /dev/sda будет /dev/sda1 . Номера разделов могут не совпадать с реальным порядком разделов на диске, в этом случае их можно отсортировать.

Рекомендуется использовать номер по умолчанию, который предложит gdisk.

Первый и последний сектор

Первый и последний сектор раздела могут быть указаны в виде номеров секторов или в виде позиций, измеряемых в кибибайтах ( K ), мебибайтах ( M ), гибибайтах ( G ), тебибайтах ( T ) или пебибайтах ( P ).

Позиция может быть задана:

  • в абсолютном выражении от начала диска. Например, 40M в качестве первого сектора указывает позицию 40 МиБ от начала диска.
  • в относительном выражении, предваряя размер символами +размер или размер . Например, +2G указывает на позицию через 2 ГиБ после сектора, предложенного по умолчанию, а -200M указывает на позицию 200 МиБ перед последним доступным сектором.

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

  • При разметке всегда рекомендуется указывать относительные размеры разделов с помощью нотации +размер и не использовать размеры меньше 1 МиБ. Такие разделы всегда будут выровнены в соответствии со свойствами устройства.
  • Оставьте 1 МиБ свободного места в первых 2 ТиБ диска (например, используя +1M в качестве первого сектора раздела) на случай, если вам понадобится создать раздел загрузки BIOS.
Тип раздела

Выберите тип раздела, введя внутренний код gdisk или указав GUID типа раздела вручную. Значение по умолчанию Linux filesystem (GUID 0FC63DAF-8483-4772-8E79-3D69D8477DE4 , внутренний код gdisk 8300 ) должно быть подходящим для большинства случаев.

  • Введите L для просмотра списка внутренних кодов gdisk.
  • Рекомендуется следовать Discoverable Partitions Specification, поскольку systemd-gpt-auto-generator(8) будет монтировать их автоматически. Смотрите #Отключение автоматического монтирования раздела GPT, если вы хотите отключить автоматическое монтирование для раздела.
  1. systemd-gpt-auto-generator(8) будет автоматически монтировать раздел только при выполнении определённых условий. Подробнее смотрите systemd (Русский)#Автомонтирование GPT-раздела.

Повторяйте эту процедуру, пока не получите желаемые разделы.

Запись изменений на диск

Совет: Используйте команду c , чтобы изменить имя раздела (PARTLABEL) для удобной его идентификации.

Для записи новой таблицы на диск и выхода используйте команду w .

Советы и рекомендации

Преобразование между MBR и GPT

Совет: Подробности можно почитать на сайте Рода Смита: Converting to or from GPT.

gdisk, sgdisk и cgdisk способны преобразовывать диски MBR и BSD disklabels в GPT без потери данных. После преобразования все первичные и логические разделы MBR становятся разделами GPT с правильными GUID типов разделов и уникальными GUID разделов.

После преобразования потребуется переустановить загрузчик, чтобы настроить его на загрузку с GPT.

  • GPT хранит вторичную таблицу в конце диска. По умолчанию эта структура данных занимает 33 сектора по 512 байт (16,5 КиБ). MBR не имеет подобной структуры данных в конце диска, поэтому последний раздел на диске MBR иногда простирается до самого конца диска и не позволяет выполнить полное преобразование. Если это произошло, необходимо отказаться от преобразования и изменить размер последнего раздела.
  • Известны проблемы с повреждением резервной копии GPT на ноутбуках с чипсетом Intel, работающих в режиме RAID. Решением является использование AHCI вместо RAID, если это возможно.

Для преобразования таблицы разделов MBR в GPT с помощью sgdisk используйте опцию -g / —mbrtogpt :

# sgdisk -g /dev/sda

Для преобразования GPT в MBR используйте опцию -m / —gpttombr . Имейте в виду, что преобразовать более четырёх разделов из GPT в MBR невозможно.

# sgdisk -m /dev/sda

Сортировка разделов

В ситуации, когда, например, новый раздел создаётся между двумя существующими или раздел удаляется, нумерация разделов может перестать соответствовать их реальному расположению на диске, и для исправления можно выполнить сортировку. В этом примере используется /dev/sda .

# sgdisk -s /dev/sda

Если вы не используете постоянные имена для блочных устройств, то вам может понадобиться обновить файлы конфигурации, в которых используется нумерация разделов, в частности /etc/fstab и/или /etc/crypttab .

Примечание: Перед использованием новых разделов ядро должно перечитать обновлённую таблицу. Перезагрузитесь или попросите ядро перечитать таблицу разделов.

Восстановление заголовка GPT

Если основной или резервный заголовок GPT оказался повреждён, можно восстановить его из сохранившегося заголовка с помощью gdisk. В данном примере используется /dev/sda .

# gdisk /dev/sda

Выберите r для опций восстановления и преобразования (только для экспертов). Далее выберите

  • b : использовать резервный заголовок GPT (воссоздать основной)
  • d : использовать основной заголовок GPT (воссоздать резервный)

После этого используйте команду w для записи новой таблицы на диск и выхода.

Расширение диска GPT

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

Запустите sgdisk с опцией -e / —move-second-header , например:

# sgdisk -e /dev/sda

После этого посмотрите список разделов, и вы должны увидеть появившееся свободное место.

Отключение автоматического монтирования раздела GPT

systemd-gpt-auto-generator(8) будет автоматически монтировать разделы в соответствии с Discoverable Partitions Specification. Иногда это нежелательно.

Автоматическое монтирование можно отключить путём добавления атрибута раздела 63 .

Запустите gdisk, например:

# gdisk /dev/sda

Введите p для просмотра списка разделов и посмотрите номера разделов, для которых вы хотите отключить автоматическое монтирование.

Введите x (экспертные команды).

Введите a — команду установки атрибута. Введите номер нужного раздела и затем номер атрибута 63 . После этого под строкой Set fields are: должно появиться 63 (do not automount) . Нажмите Enter для завершения изменения атрибутов. Повторите этот шаг для всех нужных разделов.

После завершения используйте команду w для записи новой таблицы на диск и выхода.

Также можно использовать sgdisk с опцией -A / —attributes= ; смотрите sgdisk(8) . Например, для установки атрибута 63 разделу /dev/sda2 выполните:

# sgdisk -A 2:set:63 /dev/sda

EFI-приложение gdisk

Его нет в пакетах, но Род Смит предоставляет собранное бинарное приложение EFI на SourceForge. Скачайте gdisk-efi-*.zip и распакуйте архив. Для использования скопируйте gdisk_x64.efi в системный раздел EFI и запустите его с помощью вашего загрузчика или через UEFI Shell.

gdisk_x64.efi позволяет редактировать таблицу разделов ещё до загрузки операционной системы. Он используется так же, как и двоичный файл gdisk в Linux.

Примечание: gdisk_x64.efi не умеет работать с файловыми системами, так что он не сможет делать резервную копию таблицы в файл или восстанавливать таблицу из файла резервной копии.

Смотрите README-efi.txt для более подробной информации.

Смотрите также

  • GPT fdisk Tutorial — официальный сайт GPT fdisk.
  • Страница GPT fdisk на SourceForge

Восстановление разделов и данных в Linux

Оригинал: How to recover partitions and data using Linux — Tutorial
Автор: Igor Ljubuncic
Дата публикации: 26 апреля 2012 года
Перевод: А. Кривошей
Дата перевода: апрель 2013 г.

Потеря важных данных — одна из самых больших неприятностей, которая может случиться с пользователем компьютера. Неважно, по какой причине — в результате случайной ошибки, или проблем с оборудованием, но это хоть раз происходило практически с каждым. Для предотвращения этой трагедии вы должны всегда иметь под рукой несколько проверенных резервных копий своих данных. Но что, если у вас их не было на момент сбоя? Большинство пользователей не заботятся о резервном компировании, пока не станет слишком поздно. Но не отчаивайтесь. Выход есть. В этом руководстве мы попробуем научиться восстанавливать разделы и данные на жестких дисках, а также испорченные фотографии.

okteta

Некоторые вводные замечания

Перед тем, как мы начнем, необходимо разъяснить несколько моментов. Во-первых, никаких гарантий. Восстановление данных базируется на предположениях и догадках, неизвестно насколько они точны и соответствуют истине. Хотя в примерах у нас все будет отлично получаться, на практике это требует большой доли везения. Даже если вы освоите все методологические подходы и будете использовать лучшие утилиты для восстановления данных, всегда есть шанс, что вас постигнет неудача, и вы должны быть готовы к этому.
Восстановление данных — это очень сложная процедура. Вы никогда не достигнете результата, если не чувствуете себя как дома в командной строке, разметке разделов, геометрии жесткого диска, компиляции, или просмотре файлов в шестнадцатеричном редакторе. На самом деле, если неопытный пользователь попытается использовать утилиты восстановления данных, он может нанести еще больше вреда, или уничтожить свою нормально работающую систему. Не предпринимайте ничего, пока вы точно не уверены, что знаете, что делать.
Даже если вам удастся восстановить удаленные разделы, данные на них могут быть потеряны. В целом работа с поврежденными жесткими дисками предсталяет собой разновидность азартной игры. Несмотря на все ваши усилия, все может оказаться напрасным. Важно, что вы это понимали.

Несколько важных подсказок

Перед тем, как мы продолжим, пара советов. Во-первых, если вы подозреваете, что данные или диск повреждены, вы должны немедленно прекратить использование этого диска. Если вы только что обнаружили исчезновение важных данных и они не отображаются в файловом менеджере, это не значит, чито они уже потеряны навсегда. Место, которое они занимают, может быть просто помечено как пустое, поэтому если вы продолжите использование этого жесткого диска, система может записать на это же место другие данные. Таким образом, любая попытка использования устройства может только ухудшить ситуацию. Вы должны немедленно прекратить работу, чтобы не лишиться шансов на восстановление данных.
Далее, вы не должны паниковать, действовать нужно спокойно и осторожно. Необходимо отмонтировать устройство и отключить подкачку. В любом случае необходимо остановить любые служебные операции, такие как дефрагментация или очистка диска, копирование или перемещение данных, и любые другие действия, для которых необходимы операции чтения/записи. Но есть одна загвоздка.
Любое из описанных выше действий может ухудшить ситуацию. А может и нет. К сожалению, у меня нет универсального рецепта, так как каждый такой случай уникален. На самом деле те вещи, которые в некоторых случаях могут решить проблему, в других случаях могут привести к прямо противоположному результату.
Суммируя все вышесказанное — ничего не меняйте. Если вы не понимаете, что делать, позвоните эксперту, который мог бы вам помочь. Одно можно сказать наверняка — ни при каких обстоятельствах не нужно закрывать глаза и перезагружать машину. Перезагрузка может помочь решить софтверные логические проблемы в оперативной памяти, но очень редко она может помочь разрешить аппаратные проблемы. Напротив, при перезагрузке операционная система может беспечно предположить, что с вашими данными все в порядке, и попробовать получить доступ к поврежденному диску или разделу. Это обычно значительно снижает вероятность восстановления данных.
Второй совет немного сумасшедший, поэтому можете не обращать на него внимания, если хотите. Если ваш жесткий диск перестал работать или больше не распознается операционной системой, поместите его на 15 — 20 минут в морозильную камеру. Это может оживить его на время, достаточное для того, чтобы быстро скопировать важные данные. Во многих случаях диски перестают работать вследствие механических проблем, и резкое снижение температуры может освободить мелкие заблокированные детали, оживив диск хотя бы на некоторое время. Это чистой воды шаманство, поэтому можете не воспринимать этот совет всерьез. Тем не менее, в отчаянной ситуации все средства хороши.

Восстановление разделов

Потерять раздел можно по разным причинам. Например, вы могли нечаянно создать новую таблицу разделов не на том жестком диске, или неправильно настроить мультизагрузку.
Чтобы показать вам случай из реальной жизни, я исскуственно воспроизведу ситуацию с потерей раздела. Нашей тестовой системой будет Fedora 16 Verne с KDE, проблемным диском будет /dev/sdb с данными, хотя обычно неприятности случаются с системными разделами. В данном случае вы будете использовать для восстановления раздела live CD.
Мы сотрем таблицу разделов /dev/sdb, создав новую с помощью GParted. Мы проигнорируем тот факт, что она уже существует. Таким способом мы сделаем разделы невидимыми для системы. Обычному пользователю кажется, что данные потеряны навсегда.

стертый раздел

Итак, мы стерли таблицу разделов. Теперь мы воспользуемся TestDisk — удивительным инструментом для исследования, разработанным cgsecurity.org . Я описывал эту утилиту во многих статьях. Сегодня мы изучим ее возможности и обучимся ее использованию.
Интерфейс TestDisk представляет собой текстовый мастер. Это интерактивная утилита, которая задаст вам несколько вопросов, чтобы попытаться спасти ваши данные. Первым вопросом будет — хотите ли вы записывать лог для его последующего анализа. Вероятно, необходимо согласиться с этим.

начало работы с TestDisk

Мы начнем с анализа. Пока мы не знаем ситуацию, и насколько все плохо. Так как вы, скорее всего, точно не знаете геометрию диска, используем опцию «analysis».

выбор опций TestDisk

Следующий шаг — выбор устройства, с которым мы будем работать. В нашем случае это /dev/sdb.

выбор устройства в TestDisk

Теперь выберите тип таблицы разделов. В большинстве случаев это Intel/PC.

выбор типа таблицы разделов в TestDisk

И начинаем анализировать:

анализ устройства в TestDisk

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

результат работы TestDisk

Теперь нам необходимо записать информацию о разделе на диск. Также можно изменить характеристики раздела, такие как тип или флаги.

запись новой таблицы разделов в TestDisk

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

новая таблица разделов

Печальный пример

Итак, мы успешно восстановили данные, но я хочу показать и другой пример, когда мне это не удалось. Возможно, криминалисту это бы и удалось сделать, но я потерпел полное поражение через 17 минут.
Как и в предыдущем примере, сделаем что-нибудь деструктивное. Я собираюсь записать с помощью dd незаданное количество нулевых байтов на устройство /dev/sdb. Затем, уже в процессе, я как будто осознаю свою ошибку и прерываю операцию. Но уже слишком поздно.
Теперь, когда наш раздел разрушен, давайте представим, что ничего не случилось, и попробуем смонтировать его. Конечно, ничего не получится. Сообщение об ошибке не является уникальным для этой проблемы, но оно свидетельствует, что что-то не в порядке. После дополнительных иссследований мы приходим к выводу, что наш диск испорчен и нуждается в восстановлении.

попытка монтирования

И правда, проверив диск с помощью fdisk, мы видим:

проверка с fdisk

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

запуск TestDisk

Мы сделаем это — и потерпим неудачу. Теперь мы попробуем провести более глубокий поиск.

глубокий поиск

В качесте последней отчаянной попытки вы можете попробовать вручную добавить раздел, задав начальные и конечные цилиндры, головки и сектора. Далле, вам нужно будет выбрать тип раздела, например для Linux это 83, что включает Ext, Reiserfs, BTRFS и другие типы файловых систем.

добавление раздела вручную

В нашем случае это к сожалению не сработало. Не повезло.

Восстановление файлов (и образов)

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

PhotoRec

Мы будем делать это с помощью другой утилиты от cgsecurity.org — PhotoRec. Хотя изначально она была разработана для обработки фотографий на картах цифровых камер, на сегодняшний день она умеет работать со многими типами файлов. Фактически она может восстанавливать практически все, если данные хотя бы в некоторой степени сохранили целостность.
PhotoRec можно также использовать и на работающих разделах, так как он позволяет во многих случаях найти удаленные файлы. Я протестировал ее на своих системных разделах.
Эта утилита похожа на TestDisk. Вы начинаете с выбора типа раздела, с которым вы хотите работать, а также типа файловой системы, которая, как вы полагаете, использовалась на удаленном и/или поврежденном разделе.

PhotoRec

В моем случае были обнаружены все типы файлов, включая текст, изображения, архивы, файлы баз данных, и другие. Более того, PhotoRec нашел файлы образов, которые, вероятно использовались при установке Fedora. Во всяком случае я понятия не имею, откуда они взялись.
В целом PhotoRec выглядит достаточно эффективным. Просто для проверки я произвел низкоуровневое форматирование примерно 80% моего второго жесткого диска, создал новую таблицу разделов, новый раздел, и отформатировал его в файловую систему Ext4, а затем повторно запустил восстановление. Действительно, программа не смогла найти большинство уничтоженных таким образом данных, но все равно сумела обнаружить внушительный набор файлов. Поэтому, если вы думали, что простого форматирования достаточно для скрытия данных, это не так.

Recoverjpeg

Еще одна полезная утилита для восстановления изображений, а именно JPEG — это recoverjpeg. Она создана для спасения файлов с SD-карт и чипов памяти цифровых фотокамер. Как и PhotoRec, я пробовал ее на исправных разделах, чтобы посмотреть, смогу ли я обнаружить какие-нибудь неизвестные и странные файлы, и мне это действительно удалось. Снова, наверное, остатки от инсталляции Fedora.
Этой небольшой утилиты нет в репозиториях YUM, но вы можете скачать исходный код и скомпилировать его самостоятельно. Для этого вам понадобится пакет gcc-c++.

Recoverjpeg

Восстановление изображений

Восстановленное изображение

Восстановление изображений вручную

Поврежденное изображение

Итак, мы видим, что наше изображение повреждено. GIMP не может открыть его. Но здесь ключ к решению. Мы считаем, что это файл изображения, но он начинается с символов FF 00, которые не могут быть первыми двумя байтами файла JPG/JPEG.
Далее нам необходимо проверить файл с помощью шестнадцатеричного редактора. Мы опускаемся на уровень байтов и попробуем выяснить, что не так со структурой нашего изображения. Это достаточно сложно, но другого выхода нет. Теперь нам нужен шестнадцатеричный редактор. В KDE это Okteta, но вы можете использовать любой другой, включая vi.

Okteta

Заголовок испорчен, хотя в теории его нельзя действительно назвать заголовком, но он служит тем же целям. Изучив литературу, мы узнаем, что первые два байта любого изображения в формате JPG/JPEG — это маркер SOI, в шестнадцатеричной записи это всегда будет FF D8.

редактирование изображения Okteta

редактирование изображения Okteta

Итак, теперь мы изменим вторую последовательность из двух байтов 00 на D8, как должно быть в JPG-файле. Созраним изменения и протестируем результат. Все получилось.

Восстановленное изображение

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

Хороший совет

Резервные копии для компьютера необходимы как воздух. Если у вас они есть, вы можете чувствовать себя увереннее. Хорошим примером является неожиданная смерть моего второго жесткого диска около года назад. Все, что мне потребовалось сделать — выключить компьютер, заменить диск на новый, включить и скопировать все данные из резервной копии, которую я обновлял каждый день. Конец истории.

Дополнительные материалы по теме:

Заключение

Должен признать, что данное руководство не из самых простых. Некоторые описанные здесь приемы требуют определенных знаний, и обычному пользователю работать в таком ключе будет некомфортно. Восстановление данных требует определенных навыков, и даже в этом случае успех не гарантирован. Единственный мой личный опыт относится к 2009 году, когда я пытался восстановить файлы после неудачной переустановки системы поверх существующих и ценных данных. Все это закончилось не очень удачно. Резервные копии предпочтительнее.
Тем не менее, кое что полезное вы сегодня узнали. Теперь вы знакомы с различными инструментами командной строки, вы умеете использовать TestDisk, PhotoRec, recoverjpeg, и, может быть, другие утилиты, описанные в приведенных выше источниках. На самом деле я еще не успел нопробовать некоторые программы, поэтому нас возможно ждет продолжение.
Если же все три описанных здесь утилиты вам не помогут, вряд ли поможет что-то еще. Кроме того, использование большого количества инструментов одновременно может привести к путанице и еще большим повреждениям данных. Поэтому первым выбором должны быть TestDisk и PhotoRec. Кроме того, они вероятно являются лучшими. Recoverjpeg — тоже неплохой выбор. Освоив их, вы без затруднений сможете работать и с другими подобными инструментами.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

https://alkogolizm-zhi.vyvod-iz-zapoya-na-domu-sankt-peterburg-abc.ru/