Назад | Перейти на главную страницу

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

Я только что перезаписал таблицу разделов жесткого диска моей системы. я сделал cfdisk на неправильном устройстве (/dev/sda вместо того /dev/sdd), удалил все разделы, создал один новый первичный охват по всему устройству, установил его тип на 07 (NTFS) и нажмите write.

Итак, я работаю со своей системой. До перезагрузки, надеюсь, ничего не изменится - это означает: все мои данные доступны (в настоящее время я делаю dd-бэкап всего устройства и планирую сделать .tar.gz-бэкап наиболее важных данных позже). Я также сделал резервную копию /proc/partitions, /proc/diskstats (хотя я предполагаю, что это больше о пропускной способности и тому подобном ...) и /sys/block/sda/sda?/{start,size}.

Еще кое-что, что я знаю:

Итак, мои вопросы:

Не так уж сложно. С надеждой.

Прежде всего, обратите внимание на размер и порядок всех ваших разделов на / dev / sda:

challenger:/home/michael # grep . /sys/block/sda/sda*/{start,size}
/sys/block/sda/sda1/start:63
/sys/block/sda/sda2/start:228690000
/sys/block/sda/sda3/start:257040
/sys/block/sda/sda1/size:256977
/sys/block/sda/sda2/size:83885760
/sys/block/sda/sda3/size:228432960

Запустите fdisk на / dev / sda и измените единицы измерения на секторы:

Command (m for help): u
Changing display/entry units to sectors

Затем приступайте к изготовлению перегородок. Используйте соответствующие числа start и size для каждого раздела.
Избегайте однозначных ошибок - вычтите единицу из size прежде чем вводить его в fdisk.

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First sector (63-312581807, default 63): 
Using default value 63
Last sector, +sectors or +size{K,M,G} (63-312581807, default 312581807): +256976

Command (m for help): p

Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders, total 312581808 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0x02b002af

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1              63      257039      128488+  83  Linux

Не забудьте установить идентификаторы разделов и переключить флаг загрузки на правом разделе.

Теперь переустановите MBR, и вы должны быть готовы к работе.


Естественно, вы можете сделать все это с помощью вашего любимого редактора разделов ... parted тоже отлично работает.

Если вы потеряли информацию о начале / конце разделов - parted имеет опции «спасения» для поиска потерянных разделов на диске. Но они вам не понадобятся.

Если таблица разделов повреждена, я бы предложил использовать загрузочный диск RIP (восстановление возможно в Linux) для запуска testdisk. Черт возьми, вы могли бы запустить testdisk из своей работающей системы, чтобы он сканировал и восстанавливал разделы, но я бы не стал этого делать, потому что я не знаю, что он сделает с работающей системой с открытыми файлами.

Если вы хотите попробовать сделать резервную копию важных данных (у вас ее еще нет?), Сейчас самое подходящее время для этого ...