Восстановление таблицы разделов

Все о Windows, Linux, MacOS, Novell NetWare, DOS и т.д. Сетевые службы, http, ftp, ssh, браузеры, почтовые клиенты и многое другое. Установить, настроить, объединить в сеть, заставить эффективно работать.

Модератор: xdsl

Восстановление таблицы разделов

Сообщение xdsl 02 ноя 2010, 13:22

Сегодня у меня случилось страшное - уничтожил на своем ноутбуке таблицу разделов.
А все начиналось вполне невинно: решил занулить флешку. Подключил ее и выполнил от рута dd if=/dev/zero of=/dev/sda. Вместо sdb!!! Спохватился через пару секунд, остановил работу утилиты, но таблицу разделов и первые несколько десятков мегабайт на своем жестком диске уже уничтожил. В целом, такая беда обычно заканчивается фатально, но не в этот раз. Самое главное - при разбиении жесткого диска первым разделом у меня был сделан своп. И во вторых - догадался не перезагружаться.

Скопировал в авральном порядке документы, проекты и конфиги на внешний диск и начал искать лечение от своей беды.

Помогла утилита testdisk, которая корректно обнаружила все мои разделы, кроме уничтоженного свопа. Последний пришлось создавать с помощью parted и модифицировать соответствующую строчку со значением UUID в /etc/fstab . Затем - запуск fixmbr для восстановления загрузчика. Перезагрузка... И! все! заработало! Доволен, как удав и счастлив от своей предусмотрительности (своп в начале жесткого диска).

Позднее обнаружил, что /boot/boot.800 у меня содержит корректную таблицу разделов, что позволило-бы вообще обойтись без testdisk. Но умные мысли, к сожалению, всегда приходят опосля. И, в любом случае, без свопа на sda1 все было-бы на порядок печальнее.
xdsl
 
Сообщения: 1236
Зарегистрирован: 09 дек 2008, 05:16
Откуда: ВЦ ШГПИ
Полное имя: Слинкин Д.А.

Re: Восстановление таблицы разделов

Сообщение Vladislav_133 04 ноя 2010, 20:49

А ведь сказано в библии: "не работай под рутом".
Аватара пользователя
Vladislav_133
Elite
 
Сообщения: 1386
Зарегистрирован: 13 дек 2008, 18:08
Полное имя: П.В.Ю.

Re: Восстановление таблицы разделов

Сообщение xdsl 06 ноя 2010, 11:30

Дык по другому напрямую к устройствам не пробраться!

Кстати, обнаружил еще один баг, связанный с убиением свопа. В спящий режим линукс уходит, сохраняя содержимое памяти в своп. Соответственно в /etc/lilo.conf у меня параметрами ядру передавался UUID раздела, с которого нужно было восстанавливаться при выходе из спящего режима. А UUID свопа сменился! Соответственно, в спящий режим мой ноутбук уходил без проблем, но при загрузке кричал об отсутствии раздела. Поправил строчку в lilo.conf, сказал lilo и все заработало. В спящий режим последнее время ноутбук перевожу не часто, все больше - в ждущий, поэтому баг обнаружил только сейчас, а в его идентификации и исправлении, как всегда помогли логи системы, в данном случае - /var/log/messages
xdsl
 
Сообщения: 1236
Зарегистрирован: 09 дек 2008, 05:16
Откуда: ВЦ ШГПИ
Полное имя: Слинкин Д.А.


Вернуться в Операционные системы и сетевое программное обеспечение

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

cron