LINUX.ORG.RU

Чем восстановить таблицу разделов?


0

1

В общем создал новую таблицу разделов на флешке, замтил что в консоли идет ругательство на мой sda который совсем не флешка, а мой настоящий диск
Partition(s) 1 on /dev/sda have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use. As a result, the old partition(s) will remain in use. You should reboot now before making further changes. как я понимаю ребута моя система не переживет,бекапа mbr нет, но есть вроде правильный и рабочий вывод вывод fdisk

Устр-во Загр     Начало       Конец       Блоки   Id  Система
/dev/sda1           16065    51199154    25591545    f  W95 расшир. (LBA)
/dev/sda2        51199155   118302658    33551752    7  HPFS/NTFS/exFAT
/dev/sda3       118302720   119185407      441344   82  Linux своп / Solaris
/dev/sda4   *   119185408   156301311    18557952   83  Linux
/dev/sda5           16128    51199154    25591513+   7  HPFS/NTFS/exFAT
 

чем теперь это дело легче всего восстановить?

★★★★★

Забэкапь dd первые несколько метров на флешку, а потом создай в точности такую же таблицу разделов. Должно прокатить, у меня получилось (правда разделов было два).

Stage1 ★★
()

Я уже тут!!

Посмотри при помощи hexedit 0-вой сектор и скинь сюда. Я скажу, совпадает ли с указанной талицей.

Если чё blockdev -rereadpt /dev/sdb перечитывает таблицу винта без смонтированных корневых разделов. Но ты пока не делай так.

adriano32 ★★★
()

cat /proc/partitions ? Если там ещё не поменялось, то дальше вбивать это fdisk'ом.

anonymous
()
Ответ на: комментарий от anonymous

хотя я наврал. Нужно шариться по /sys/block/$disk/$partition/ и там будут файлы (start, size). Другой вариант это грузиться с ливсиди с testdisk и им восстанавливать таблицу, хотя его можно запустить и на живой системе, он должен всё найти.

anonymous
()
Ответ на: комментарий от firestarter

Я бы не стал запускать testdisk для диска со смонтированной корневой системой.

ТС, ну ТС, скиньте же 0-сектор уже. dd if=/dev/sda of=/home/user/image bs=512 count=1

adriano32 ★★★
()

в общем восстановил все, слетел только груб, таблица разделов осталась, но сам факт того что гпартед что-то намутил на /dev/sda когда был быбран только /deb/sdb наводит на грустные мысли, тем более что при выбраном /dev/sda оно просто так ничего не дает сделать, сейчас уже попробую заново воспроизвести, вооружившись бекапом.

Novell-ch ★★★★★
() автор топика
Ответ на: комментарий от Novell-ch

На /dev/sda не дало потому что на нём корень смонтирован был.
Что выбирали в гуе в правом верхнем углу, то и должно было редактироваться. Я не верю что gparted сам что-то мог лезть делать на винте, когда ему select /dev/sdb

А так parted (!gparted) при выходе всегда предупреждает что kernel ... to reread partition table ... reboot. Без смонтированного корня на диске blockdev -rereadpt /dev/sdb и все разделы обновятся. На корневом винте надо ребут.

adriano32 ★★★
()
Ответ на: комментарий от Novell-ch

>но сам факт того что гпартед что-то намутил на /dev/sda когда был быбран только /deb/sdb наводит на грустные мысли
о карме
ибо не воспроизводимо сие ни разу!

megabaks ★★★★
()
Ответ на: комментарий от adriano32

я только что опять получил предупреждение про sda, хотя работал только с sdb
теперь касается 5 партиции
Partition(s) 5 on /dev/sda have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use. As a result, the old partition(s) will remain in use. You should reboot now before making further changes.

Novell-ch ★★★★★
() автор топика
Ответ на: комментарий от Novell-ch

Скажи, а зачем на extended разделе один единственный logical раздел? МБ сделать его primary? Давай перепишем по-человечески по порядку. Ручками. А то блин раздел в начале диска, а номер 5.

ИМХО ему именно не нравится этот /dev/sda1 -> /dev/sda5
Не потому ли что там ntfs?

adriano32 ★★★
()
Ответ на: комментарий от adriano32

сейчас перегружусь и запишу видео, у меня это воспроизводится со 100% гарантией
в этот раз жертвой пал /dev/sda3

Novell-ch ★★★★★
() автор топика

вот видео
http://ompldr.org/vN2pzdQ/11.ogv
запускаем gparted, выбираем /dev/sdb создаем новую таблицу разделов, и после этого получаем на консоль уведемление об изменении на разделе диска /dev/sda

Novell-ch ★★★★★
() автор топика
Ответ на: комментарий от Novell-ch

Предлагаю провести безопасный эксперимент:
1)бэкап 0-го сектора
2)вписываем windows/D как primary вместо extended.
3)ребут, проверяем туже последовательность действий что в ролике
4)Если так же, можем вернуть из бэкапа

adriano32 ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.