Мой ноутбук не может загрузиться. Поэтому я запускаю Ubuntu 18.04 live с загрузочного USB. Он не смонтировал автоматически жесткий диск на 500 ГБ /dev/sda
, который использует GPT.
lsblk
показывает только диск, а не разделы; fdisk
вместо этого может их показывать.
gdisk
показывает ту же ошибку, что и вэта страница(Раздел «Полуавтоматическое восстановление»):
# gdisk /dev/sda
GPT fdisk (gdisk) version 0.7.2
Warning! Main partition table CRC mismatch! Loaded backup partition table
instead of main partition table!
recovery/transformation command
Затем на связанной странице в разделе «Процедуры ручного восстановления» отображается список опций , в котором указывается, что:
Вы можете поэкспериментировать со всеми описанными выше опциями (кроме w); ни одна из утилит восстановления данных не вызывает немедленной записи на диск.
Я не понимаю, как можно проверить, будут ли работать эти опции или нет, прежде чем вносить постоянные изменения.
Можно ли gdisk
временно использовать backup partition table
, чтобы Ubuntu могла монтировать /dev/sda
разделы диска, а затем оставить диск неизменным при завершении работы Ubuntu?
решение1
Вам не нужно, чтобы ваша ОС распознавала раздел. Вы можете (попытаться) смонтировать все устройство с правильным смещением. Например, если вы подозреваете (или если какой-либо инструмент вам это подскажет), что раздел начался с sector 2048
(довольно распространенное значение с 512-байтовыми логическими секторами), то попробуйте:
sudo mount -o ro,offset=$((2048*512)) /dev/sda /some/mountpoint
( ro
на всякий случай; без него было бы так -o offset=$((2048*512))
). Если он монтируется и содержимое выглядит нормально, начальный сектор правильный.
Это может быть номер сектора 256
для 4096-байтовых логических секторов. Обратите внимание, что $((256*4096))
и $((2048*512))
— это одно и то же число.
И если какой-либо инструмент скажет вам начать с сектора 14649344
, вы используете offset=$((14649344*512))
(предполагая, что сектора размером 512 байт).
Microsoft любила начинать с 63
(из-за общего значения 63 секторов на дорожку в CHS, я полагаю), но это было до GPT. Если вам когда-нибудь понадобится угадать, где C:\
начинается Windows эпохи XP, попробуйте offset=$((63*512))
.
Вы сказали, fdisk
что может показать какую-то разумную структуру разделов. Это должно быть вашей отправной точкой.
Если fdisk
не помогло, testdisk
то это будет следующим инструментом для запуска. Я считаю, что он может искать потерянные разделы и отображать их начальные сектора без изменения диска. Это должно дать вам смещения, которые можно попробовать.