Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Убил загрузочный сектор, как обойтись меньшими потерями. Я в панике, что делать?  (Прочитано 1843 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Ni1son

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Добрый день всем!
Моё первое сообщение на этом форуме к сожалению совсем не радостное. Записывал на флешку образ используя команду dd. Усмехнулся, когда в описании команды в интернете прочитал, что её расшифровывают как disk destroyer и пр. И радостно выполнил команду dd указав в of= вместо /dev/sdb - /dev/sda.

Cам не понял, как это произошло. А потом мне стало плохо. На ноутбуке большое количество информации по работе, которую потерять было бы просто ужасно, плюс на нём у меня стояла предустановленная win8, которую я слышал переустанавливать на ноутбуки с UEFI - ужасный гемор.

Затер первые два сектора. По видимому загрузчик EFI(?) и Windows recovery environment. (fdisk -l приведу ниже)

Теперь мне нужно что-то предпринять. И я в панике делаю что-попало. Сейчас копирую содержимое home, на ntfs раздел где хранилась различная информация windows, он находится в самом конце. Самое важное сохранить содержимое этой папки.

Но может быть есть возможность что-то предпринять, чтобы сохранить данные, загрузку win и ubuntu. Систему пока не перезагружал - боюсь.

Приведу последовательность своих действий:

fdisk -l - до аварии:
ni1son@ni1son-workstation:/media/data/distrib$ sudo fdisk -l

Disk /dev/sda: 931,5 GiB, 1000204886016 bytes, 1953525168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 082DB70B-3DEF-423C-BEC8-ADA3856B9368

Device          Start        End    Sectors   Size Type
/dev/sda1        2048     206847     204800   100M EFI System
/dev/sda2      206848    2050047    1843200   900M Windows recovery environment
/dev/sda3     2050048    2312191     262144   128M Microsoft reserved
/dev/sda4     2312192  563517439  561205248 267,6G Microsoft basic data
/dev/sda5   783718400 1911560191 1127841792 537,8G Microsoft basic data
/dev/sda6  1911560192 1953523711   41963520    20G Windows recovery environment
/dev/sda7   563517440  567517183    3999744   1,9G Linux swap
/dev/sda8   567517184  783718399  216201216 103,1G Linux filesystem

Partition table entries are not in disk order.
Disk /dev/sdb: 1,9 GiB, 2021654528 bytes, 3948544 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x22e65122

Device     Boot Start   End Sectors Size Id Type
/dev/sdb1  *        0 43007   43008  21M 17 Hidden HPFS/NTFS
/dev/sdb2       43008 55295   12288   6M  1 FAT12

потом:
ni1son@ni1son-workstation:/media/data/distrib$ sudo dd if=archlinux-2015.02.01-dual.iso of=/dev/sda bs=4M && sync
147+0 records in
147+0 records out
616562688 bytes (617 MB) copied, 12,3281 s, 50,0 MB/s

И fdisk начал выдавать следующее:
ni1son@ni1son-workstation:/media/data/distrib$ sudo fdisk -l
Disk /dev/sda: 931,5 GiB, 1000204886016 bytes, 1953525168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x25a9244e

Device     Boot Start     End Sectors  Size Id Type
/dev/sda1  *        0 1204223 1204224  588M  0 Empty
/dev/sda2         252   63739   63488   31M ef EFI (FAT-12/16/32)

[color=red]Partition 3 does not start on physical sector boundary.[/color]


Disk /dev/sdb: 1,9 GiB, 2021654528 bytes, 3948544 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x25a9244e

Device     Boot Start     End Sectors  Size Id Type
/dev/sdb1  *        0 1204223 1204224  588M  0 Empty
/dev/sdb2         252   63739   63488   31M ef EFI (FAT-12/16/32)

Не смотря на страшную надпись: Partition 3 does not start on physical sector boundary. - доступ к остальным разделам кроме первых двух, из системы ещё есть. Не знаю что будет после перезагрузки.

Пожалуйста, помогите. Что мне делать? Что предпринять?

Оффлайн san-alex

  • Заслуженный пользователь
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 7728
  • Ex-CNC programmer
    • Просмотр профиля

Оффлайн ARTGALGANO

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 1936
    • Просмотр профиля
стер таблицу разделов, загрузочный раздел винды и 600 мегов в начале диска, 
/dev/sda1  *        0 1204223 1204224  588M  0 Empty
т.е. вот это
/dev/sda1        2048     206847     204800   100M EFI System
/dev/sda2      206848    2050047    1843200   900M Windows recovery environment

можно попробовать восстановить GPT из резервной копии

Оффлайн Ni1son

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
С момента аварии ещё не перезагружался. Заливаю всё это время информацию с жесткого диска на Dropbox. Система все это время работает без сбоев.

Я так понимаю, после перезагрузки мне придется заново разбивать все разделы gdisk и соответственно вся информация с жесткого диска будет потеряна.

Но, у меня сохранились эти данные:
/dev/sda1        2048     206847     204800   100M EFI System
/dev/sda2      206848    2050047    1843200   900M Windows recovery environment
/dev/sda3     2050048    2312191     262144   128M Microsoft reserved
/dev/sda4     2312192  563517439  561205248 267,6G Microsoft basic data
/dev/sda5   783718400 1911560191 1127841792 537,8G Microsoft basic data
/dev/sda6  1911560192 1953523711   41963520    20G Windows recovery environment
/dev/sda7   563517440  567517183    3999744   1,9G Linux swap
/dev/sda8   567517184  783718399  216201216 103,1G Linux filesystem

Возможно ли основываясь на них создать GPT и прописать в нем соответственно эти данные о разделах, не затрагивая информацию, на самих разделах?

Пользователь решил продолжить мысль 09 Март 2015, 19:26:38:
Или, если система продолжает работать без сбоев - значит копия информации о разделах должна хранится и в самой системе. Может быть существует возможность восстановить её "оттуда"?
« Последнее редактирование: 09 Март 2015, 19:26:38 от Ni1son »

Оффлайн ARTGALGANO

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 1936
    • Просмотр профиля
Система работает, пока не перечитана инфа о разделах.
Восстановить gpt (testdisk, dmde), но винда грузиться не будет, т.к. стер виндовый загруз.раздел
и восстановить груб.

Оффлайн Ni1son

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Сегодня весь вечер производился анализ диска с помощью testdisk.
Он мне нашел больше 20 разделов в произвольном порядке сообщил, что три не может восстановить. Погда раздумывал, глядя на этот список, что с ним делать, выяснил, что клавиша esc не возвращает на предыдущей шаг, а просто сбрасывает все результаты 8 часового анализа.

В общем, продолжу делать бэкап данных в dropbox, а потом буду просто переустанавливать и переразбивать все заново.

Оффлайн Ni1son

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Пока изучал на виртуалке установку Arch Linux - нашел решение для восстановления таблицы GPT, если сохранились номера начальных и конечных секторов разделов, а так же их типы.

Напишу инструкцию, если кто-то столкнется с подобной проблемой.

Для восстановления таблицы разделов используем программу gdisk.

1. Запускаем gdisk
sudo gdisk
2. Он запросит: Type device filename, or press <Enter> to exit: Вводим: /dev/sda (или ваш собственный путь до файла устройства жесткого диска). Для вывода текущих разделов - введите команду p

3. Т.к. таблица затерта, программа запросит выбрать тип таблицы или предложит создать новую таблицу разделов. Выбираем цифру создания новой таблицы и нажимаем Enter.

4. Теперь для каждого раздела выполняем следующие действия: вводим команду n для создания нового раздела. Будут поочередно запрошены:
  • Номер раздела (если воссоздаем раздел /dev/sda1 - вводим 1 и.т.п)
  • Номер сектора начала раздела (в моем случае для /dev/sda1 это будет 2048)
  • Номер сектора конца раздела (у меня 206847)
  • Шестнадцатиричный код типа раздела, нажимаем L - чтобы отобразить их список, находим нужный и вводим его код (в моем случае тип первого раздела EFI system, и его код ef00)

5. Повторяем шаг 4. для каждого раздела. Если вы ошиблись - можно "удалить" раздел (кавычки т.к. таблица ещё не записана на диск) введя d и номер только что созданного раздела.

6. Для вывода создаваемых разделов используем команду p. Внимательно все проверяем.

7. Для записи изменений и выхода из программы - вводим w. Таблица разделов восстановлена.

Но нужно иметь ввиду, что если данные были перезатерты, но формат разделов и данные на них могут не соответствовать их типу. Поэтому, разделы, которые были перезатерты - переформатировать (команда для форматирования mkfs.[тип файловой системы] /dev/sda[номер раздела]) и восстановить/переустановить данные - но это уже другая тема.
« Последнее редактирование: 11 Март 2015, 02:55:37 от Ni1son »

 

Страница сгенерирована за 0.071 секунд. Запросов: 24.