сегодня я установил новый жесткий диск на своем домашнем сервере, пошел форматировать его в gdisk (больше 2 ТБ), установил изменения и написал их. Тогда я заметил, что я выбрал неправильный диск, на самом деле я просто overwrote таблицу разделов на моем загрузочном диске вместо этого.
раздел изменения таблицы будут записаны, как только перезагрузите систему, и я относительно уверен, что он не будет загрузочным, если я не смогу восстановить таблицу разделов, какой она была раньше.
есть ли способ восстановить старую таблицу разделов или, по крайней мере, ее достаточно для безопасной перезагрузки?
у меня есть вывод 'p' из gdisk, прежде чем я переписал таблицу:
Command (? for help): p
Disk /dev/sdh: 125045424 sectors, 59.6 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): D0127C61-1349-42D1-A03F-46F604F3DD6C
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 125045390
Partitions will be aligned on 2048-sector boundaries
Total free space is 4717 sectors (2.3 MiB)
Number Start (sector) End (sector) Size Code Name
1 2048 119883775 57.2 GiB 8300 Linux filesystem
5 119885824 125044735 2.5 GiB 8200 Linux swap
некоторые осложнения:
-
диск ранее был разбит на разделы в MBR, и - не проверяя наверняка-я не думаю, что этот конкретный ПК поддерживает UEFI/загрузку с GPT.
-
Я не уверен, что эта распечатка включает в себя все информация, необходимая для восстановления таблицы разделов. Возможно, что некоторые разделы скрыты здесь? Или что другая важная информация будет отсутствовать? Я знаю, например, что, поскольку gdisk / GPT не имеет "загрузочного" флага, эта распечатка не включает его.
-
Я уже пробовал писать эти разделы обратно с помощью fdisk, но не могу понять, как заставить fdisk создать раздел с номером '5'. Я предполагаю, что, если бы мой раздел подкачки "переместился" из sdh5 в sdh2, это не просто волшебно работать.
Я нашел похожую проблему,восстановить таблицу разделов все еще присутствует в работающей системе по поводу перезаписи таблицы разделов с помощью dd
. Но в моем случае, поскольку я использовал gdisk (+ fdisk) для написания новой таблицы, я не уверен, что информация в /sys/block полностью точна.