Я фанат этого блога! Подписаться

Linux дистрибутивы

На нашем линукс блоге вы можете скачать linux дистрибутивы, а так же найти много информации по линуксу

Subscribe

Восстановление linux

Июль 28th, 2010

Введение

В этой статье будет описываться восстановление linux разделов, а именно её таблицы, восстановление загрузчика grub2. Итак представим такую проблему, мы решили поставить Windows, и после установки не обнаруживаем каких либо разделов с linux, так же при загрузки с жесткого диска мы можем видеть что то типа «can’t load, no system installed».

Что делать?

Первым делом нужно чтобы не было никакой записи на жесткий диск, во избежание потери информации. С windows можно восстановить при помощи Partition Magic, но это нам не интересно. Можно заглянуть сюда http://www.dissers.info кстати.

Под рукой нужно всегда иметь любой лайв сд дистрибутив с предустановленным грубом и нужными утилитами для восстановления, это : testdisk, gpart, fdisk. Их существует достаточно много, но я привел более распространенные.

Первым делом смотрим какие у нас есть разделы:

sudo fdisk -l

Если есть разделы которые нормально монтируются но там исчезла половина фаилов, то следует их примонтировать в режиме только для чтения, делается так:

mount -r /dev/вашраздел

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

Предполагается что мы потеряли где то там пару разделов, и нам надо их востановить. На мой взгляд лучше всего использовать для этого testdisk.

Запускаем testdisk

sudo testdisk
  1. Нас первым делом спросят про логирование, его лучше врубить чтобы потом было что смотреть.
  2. Выбираем винт на котором потерялись разделы
  3. Показывает сектора
  4. Выбераем тип таблицы, я выбрал intel
  5. Теперь нам дают выбор действий, особо ничего трогать не стоит, запускайте Analyze, testdisk проанализирует структуру разделов
  6. Вам представлена структура разделов, жмем Quick Search
  7. Опа, у меня он нашел мои потерянные 2 раздела! Жмем enter для продолжения
  8. Ну и осталось применить все изменения, жмем write. Отвечаем «да» на вопрос «Записать таблицу разделов?» и ждем пока всё закончиться, у меня возился около часа.

Монтировать почему то сразу не получилось, но после ребута всё встало на свои места.

Восстановление поврежденного раздела

Симптомы следующие: не под каким пинком не монтируется. В этом случае может помочь fsck. E У меня фаиловая система ext4 поэтому выглядит восстановление так:

sudo fsck.ext4 /dev/sda5

Не знаю как для остальных фс, но для ext2 — fsck.ext2, ext3 — fsck.ext3

После восстановления должно всё работать.

Восстановление grub 2

Разделы мы все восстановили, теперь осталось восстановить груб если на восстановленных разделах был Linux, ну может и параллельно windows, не важно.

Первым делом узнаем на каком разделе у нас Linux, у меня это /dev/sda6 (узнаем свой раздел – sudo fdisk -l)

Теперь нам нужен корневой раздел, монтируем его:

sudo mount /dev/sdb6 /mnt

После монтируем папку /dev нашей live системы как /dev нашего корневого раздела

sudo mount --bind /dev /mnt/dev

И папку /proc как /proc корневого раздела

sudo mount --bind /proc /mnt/proc

Далее входим под рутом где корень является /mnt

sudo chroot /mnt /bin/bash

Теперь можно ставить груб на нужный жесткий диск(обратите внимание что жесткий диск, а не его раздел). У меня это /dev/sda

grub-install /dev/sda

Если были ошибки, то:

grub-install --recheck /dev/sda

Всё, мы восстановили разделы с linux и возможно windows, и восстановили загрузчик.

Если grub не нашел windows

Бывает… Открываем /boot/grub/grub.cfg

sudo nano /boot/grub/grub.cfg

И вписываем это там где прописываются все системы:

### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Винда" {
insmod ntfs
set root='(hd0,1)'
search --no-floppy --fs-uuid --set 1C2B2F8447DD8DB0
drivemap -s (hd0) ${root}
chainloader +1
}
### END /etc/grub.d/30_os-prober ###

меняем только uuid моего раздела -1C2B2F8447DD8DB0 , на свой, узнать uuid можно так:

ls -l /dev/disk/by-uuid

4 Комментариев к “Восстановление linux”

  1. Hariec пишет:

    Замечательная статья, благодарю пригодится.

  2. Я пишет:

    “sudo testdisk”
    не пашет. Инструкции как установить testdisk вообще нет

    • it_fila пишет:

      надо загрузиться с флешки или live-cd с линукс, подключиться к интернету, включить репозитории кроме диска, проверить обновления (sudo apt-get update), после этого поставить testdisk (sudo apt-get install testdisk)

      совсем всё разжевывать надо что ли? не для дебилов вроде как написано, но ничего заумного тоже нет.

  3. Victor пишет:

    Статья реально классная!!! Она самая лучшая по восстановлению Grub2. А то сколько ссылок не перелистал все пишут не понятно. Здесь все доступно и ясно написано. Спасибо большое!!!

Комментировать

 


melayu boleh