1

Экспериментируя с тем, как это исправить, я натолкнулся на предложение стереть MBR, так и сделал.

dd if=/dev/zero of=/dev/sdb bsize=512 count=1

Упс. Нет таблицы разделов.

Да, у меня есть резервные копии, но я бы хотел вернуть эти разделы обратно. Что я должен делать? Есть несколько проприетарных продуктов, которые утверждают, что магически исправляют разделы и восстанавливают данные, но я им не доверяю. Можно ли восстановить разделы обычными командами Linux/Windows?

РЕДАКТИРОВАТЬ: Учитывая, что первый раздел точно 4 МБ (специальный загрузочный раздел), я могу безопасно определить, где начинается следующий раздел, по крайней мере, и работать оттуда?

2 ответа2

1

Если вы еще не перезагрузились, ядро все еще знает старый макет, который можно получить из /sys .

#!/usr/bin/env bash
dev=${1:-sda}
dev=${dev#/dev/}
for part in /sys/class/block/${dev}[0-9]*; do
    num=$(<$part/partition)
    start=$(<$part/start)
    size=$(<$part/size)
    end=$((start+size-1))
    echo "# partition $num: start $start, size $size, end $end"
    echo "sgdisk /dev/$dev --new=$num:$start:$end"
    #echo "parted /dev/$dev mkpart primary $start $end"
done
1

Существует бесплатная кроссплатформенная утилита с открытым исходным кодом под названием TestDisk, которая, похоже, способна сделать это. http://www.cgsecurity.org/wiki/TestDisk - это сайт разработчика, здесь: https://en.wikipedia.org/wiki/TestDisk - статья по WP, а здесь: http://www.geekyprojects .com/storage/how-to-repair-a-поврежден-раздел-таблица-или-mbr/ является руководством по обзору / использованию.

Я не пробовал это лично, но так как вам нечего терять на этом этапе ..

Обновление: И, о, смотрите - здесь: Vista - вытерла MBR и HEAD диска - как восстановить? является суперпользователем вопросов и ответов, включая успешное использование TestDisk.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .