Восстановление перемещенных .mod файлов с помощью grub rescue

Я сделал глупость ... Я забыл, что Ubuntu 10.04 (Lucid Lynx) переключился на GRUB & nbsp; 2, который помещает тонну файлов * .mod (модулей ядра) в /boot/grub. Я думал, что это были файлы саундтреков, ошибочно помещенные туда, и я переместил их. Само собой разумеется, следующая перезагрузка была травмирующей. Мне подарили что-то, о чем я даже не помнил ... подсказка «grub rescue>».

С помощью Исправлена ​​ошибка GRUB: «ошибка: неизвестная файловая система» , однако мне удалось восстановить ...

  • Я обнаружил, что в GRUB rescue нет команд 'cd', 'cp' или каких-либо других команд файловой системы, кроме его собственного варианта 'ls'.
  • Итак, сначала я должен был найти раздел с каталогом /boot, содержащим файл vmlinuz и другие файлы загрузочных образов ... (аппроксимация из памяти неудачных попыток, а также пустые строки для ясность, добавлено 2014-07-10 docsalvage)

    grub rescue>  ls  
    (hd0,4) (hd0,3) (hd0,2) (hd0,1)  
    
    grub rescue>  ls (hd0,4)/boot
    ... some kind of 'not found' message
    
    grub rescue>  ls (hd0,3)/boot
    ... some kind of 'not found' message
    
    grub rescue>  ls (hd0,2)/boot
    ... grub ... initrd.img-2.6.32-33-generic ... vmlinuz-2.6.32-33-generic 
    
  • Я нашел каталог /boot, содержащий файл vmlinuz vmlinuz-2.6.32-33-generic на разделе (hd0,2) . [тысяча сто тридцать шесть]

  • Затем я вручную загрузился из приглашения «grub rescue>». Следующие команды будут ...

    • Установите root для использования каталога /boot в разделе (hd0,2).
    • Загрузить модуль ядра linux.
    • Установите этот модуль для использования образа ядра vmlinuz-2.6.32-33-generic.
    • Установите initrd (инициализация RAM-диска) для использования образа initrd.img-2.6.32-33-generic.
    • Загрузите Linux.
  • grub rescue>  set root=(hd0,2)/boot  
    grub rescue>  insmod linux  
    grub rescue>  linux (hd0,2)/boot/vmlinuz-2.6.32-33-generic root=/dev/sda2
    grub rescue>  initrd (hd0,2)/boot/initrd.img-2.6.32-33-generic  
    grub rescue>  boot  
    
  • Это загружает и выдает сообщение BusyBox, которое имеет некоторые элементарные команды файловой системы.

  • Затем я переместил файлы * .mod обратно в каталог /boot/grub ...

    busybox>  cd /boot  
    busybox>  mv mod/* grub
    busybox>  reboot
    
  • Перезагрузка прошла успешно, но это было много работы.

Есть ли более простой способ?

33
задан 13 April 2017 в 15:24

5 ответов

Нет. Я думаю, что вы нашли самый простой способ выйти из состояния вашей системы, используя grub rescue ; это очень минималистичная система, дающая достаточно возможностей для загрузки системы.

Кстати, я считаю, что вы, должно быть, нашли файлы .mod и выполнили insmod linux или ] linux команда не удалась.

Единственный другой способ, как уже упоминалось, - это загрузить Live CD и переустановить grub2 после chroot'а в «сломанной» системе.

5
ответ дан 13 April 2017 в 15:24

Вот несколько общих и основных инструкций, которые помогут с ошибками загрузки, такими как Ошибка 15 этапа загрузки 1.5 GRUB (например, после установки Windows на другой диск):

  1. Загрузитесь с LiveDVD ( например, диск рабочего стола Ubuntu).

  2. Откройте терминал и перезапишите конфигурацию grub, используя следующие команды:

    • sudo mount / dev / sdXY / mnt
    • sudo grub-install --root-directory = / mnt / dev / sdX

Где / dev / sdX - это диск, на котором установлена ​​Ubuntu, а / dev / sdXY - это раздел на диске, на котором установлена ​​Ubuntu. Другими словами, / dev / sdXY содержит / boot и так далее.

Используйте fdisk -l , чтобы проверить место установки Ubuntu.

7
ответ дан 13 April 2017 в 15:24
  1. Загрузитесь с Live CD

  2. Откройте терминал (CTRL + ALT + T)

  3. Введите следующие команды:

sudo fdisk -l

И найдите свой раздел Ubuntu ( должно быть / dev / sda1, если это первый раздел)

sudo mount /dev/sda1 /mnt

sudo mount --bind /sys /mnt/sys

sudo mount --bind /proc /mnt/proc

sudo mount --bind /dev /mnt/dev

sudo chroot /mnt

Теперь переустановите Grub2

sudo apt-get install --reinstall grub2
4
ответ дан 13 April 2017 в 15:24

У меня была такая же проблема, когда я обновлял свою систему.

Я предлагаю следующие простые шаги:

  1. Загрузите свою систему с live CD ubuntu или live USB.
  2. Откройте папку терминал и запустите команду sudo add-apt-repository ppa: yannubuntu / boot-repair && sudo apt-get update
  3. Затем установите восстановление загрузки, выполнив команду sudo apt-get install -y boot-repair && boot-repair

  4. Запустить восстановление загрузки после установки. Например, в меню выберите Система-> Администрирование-> Восстановление при загрузке (только для Ubuntu 10.04) и следуйте инструкциям.

    На выяснение проблемы и ее устранение может потребоваться 15-20 минут. почини это.

Для получения дополнительной помощи перейдите по ссылке https://help.ubuntu.com/community/Boot-Repair

4
ответ дан 13 April 2017 в 15:24

Вы можете загрузить Live CD, смонтировать жесткий диск, открыть nautilus как root и скопировать эти файлы в /boot.

0
ответ дан 13 April 2017 в 15:24

Другие вопросы по тегам:

Похожие вопросы: