Ваши данные за пределами первых 300 МБ или около того по-прежнему можно восстановить, но вы должны быть очень осторожны в своих действиях. В частности, вы захотите свести к минимуму объем записи на этот диск и сохранить все данные, которые можно восстановить, в другом месте для последующей переустановки. К счастью, у вас есть раздел EFI размером более 300 МБ в начале диска, поэтому основной раздел ОС может быть нетронутым и на 100% восстанавливаемым. В этом случае вам может понадобиться переформатировать раздел EFI и переустановить загрузчик.
Во-первых, как обсуждалось @Ponjar, вам нужно исправить таблицы разделов. Запущенные вами команды показывают только существующие таблицы разделов в том виде, в каком они были найдены. Игнорировать таблицу разделов MBR. Это происходит из образа ISO, который вы записали в начало диска, и это неверно. Вместо этого вам нужно восстановить копию таблицы разделов GPT, обнаруженную первой командой. К счастью, GPT хранит резервную копию всей таблицы разделов в конце диска, и gdisk может успешно ее прочитать. Вам нужно будет следовать процедуре, аналогичной этой, чтобы восстановить резервную копию GPT:
Оболочка gdisk откроется. Введите «r», чтобы выбрать вариант восстановления.
В параметре восстановления введите «b», чтобы восстановить заголовок GPT из вторичного (резервного), а затем введите «c», чтобы восстановить таблицу разделов GPT из вторичного (резервного).
Затем выберите «v», а затем «w» для проверки и записи на диск.
# sudo gdisk /dev/sda
GPT fdisk (gdisk) версии 1.0.1
Сканирование таблицы разделов:
МБР: защитный
БСД: нет
АПМ: нет
GPT: присутствует
Найден действительный GPT с защитной MBR; с помощью GPT.
Команда (? для справки): r
Команда восстановления/преобразования (? для справки): b
Команда восстановления/преобразования (? для справки): c
Предупреждение! Это, вероятно, будет делать странные вещи, если вы преобразовали MBR в
форму GPT и еще не сохранили GPT! Продолжить? (Д/Н): Д
Команда восстановления/преобразования (? для справки): v
Проблем не обнаружено. 3437 свободных секторов (1,7 МБ) доступны в 2
сегментов, самый большой из которых имеет размер 2014 (1007,0 КиБ).
Команда восстановления/преобразования (? для справки): w
После восстановления таблицы разделов вам потребуется восстановить основную файловую систему ОС. Если это правда, что dd никогда не достигал этого раздела, то, возможно, больше нечего делать. Попробуйте смонтировать его в свой образ восстановления:
sudo mount -r /dev/sda2 /mnt
Я рекомендую использовать здесь -r для монтирования только для чтения при проверке данных.Если он монтируется и вы видите, что все ваши данные присутствуют, это может быть полезно для повторного использования без переустановки. Если все в порядке, вы можете исправить загрузку, просто переустановив системный раздел EFI. Это нужно будет переформатировать с нуля:
sudo mkfs -t жир -F 32 /dev/sda1
Вам также нужно будет сделать вашу корневую файловую систему доступной для чтения и записи:
sudo mount -o перемонтировать,rw /mnt
Тогда следуйте это руководство чтобы переустановить GRUB на системный раздел EFI:
sudo mount /dev/sda1 /mnt/boot/efi
для i в /dev/dev/pts/proc/sys/run; выполнить sudo mount -B $i /mnt$i; сделано
судо chroot/mnt
grub-установить /dev/sda
обновление-личность
Однако, если вы обнаружили, что не можете смонтировать корневую файловую систему, у вас может быть небольшая потеря данных, и вам потребуется восстановить суперблок в вашей корневой файловой системе. Судя по таблице разделов и размеру файла, которые вы упомянули в вопросе, это не должно быть так, но если это так, эта процедура должна помочь найти суперблок. Бег мкфс -н
в вашей корневой файловой системе, чтобы обнаружить, где могут быть резервные суперблоки.
sudo mkfs -t ext4 -n /dev/sda2
Первые несколько суперблоков могут быть перезаписаны, но более поздние суперблоки должны остаться нетронутыми. Основываясь на показанных суперблоках, вы можете попробовать смонтировать один из них:
sudo mount -o sb=131072 -r /dev/sda2 /mnt
Предполагая, что 131072 является одним из суперблоков, предложенных mkfs, и не был перезаписан. Если данные в /mnt выглядят разумными и вы можете найти некоторые файлы, вы можете попытаться восстановить файловую систему следующим образом:
sudo fsck -t ext4 -b 131072 /dev/sda2
Однако в тот момент, когда вы прибегаете к использованию альтернативных суперблоков, вы, вероятно, захотите сделать резервную копию любых данных, которые вы можете сохранить, а затем выполнить полную переустановку.