Модернізація з 13.10 до 14.04 розбила Груба


11

У мене є система подвійного завантаження Ubuntu + Windows 8 в системі UEFI. Все було нормально, поки я не перейшов на Ubuntu 14.04 з 13.10.

Тепер, що я отримую, коли я завантажую ПК, це такий рятувальний екран із таким чином:

Failed to open \EFI\Microsoft\Boot\grubx64.efi - 800000000000000E
Failed to load image
Failed to open \EFI\Microsoft\Boot\MokManager.efi.efi - 800000000000000E
Failed to load image
Welcome to GRUB!

error: symbol 'grub_term_highlight_color' not found.
grub rescue> 

Використання завантажувального ремонту з живого CD (13.10 або 14.10) повідомляє про помилку і створює цей звіт: http://paste2.org/Y8mDwa0M

(Ремонт завантаження каже, що він встановить пакети з Ubuntu 13.10)

але нічого не змінюється.

Якщо я натискаю f12 під час завантаження, я потрапляю на екран біографії (меню завантаження), де я можу вибрати з hdd, usb, dvd-рідера і, якщо натискаю на жорсткий диск, я отримую три варіанти:

Виберіть пристрій для завантаження:

Windows Boot Manager 
ubuntu
Ubuntu

Параметр Windows поверне мене до рятувальної роботи.

За допомогою двох інших варіантів я потрапляю до меню grub, де я можу запустити Ubuntu, але варіант вікна не працює

Я вже не знаю, що робити

Оновлення :

Дякую за відповіді, я насправді пробував їх усіх (перевстановлював grub більше 5 разів із різних версій Ubuntu на USB-накопичувачах і багато разів використовував ремонт завантаження, але нічого не працювало)

Наприкінці я використовую rEFInd ( http://www.rodsbooks.com/refind/getting.html ), який дозволяє мені отримати доступ до grub, з якого я можу запустити Ubuntu (але не windows) та запустити Windows самостійно. за допомогою меню rEFInd.

Але звичайно це не ідеальне рішення

Оновлення 2:

У мене тільки один диск:

введіть тут опис зображення

Оновлення 3:

це помилка, яка з’являється при спробі встановити grub або запустити grub-install:

Installing for i386-pc platform. 
grub-install: Warning: This GPT partition label has no BIOS Boot Partition, the embed is not possible. 
grub-install: Warning: This embed is not possible. GRUB can only be installed in this configuration using blocklist. The blocklist however, are not reliable and it is not recommended to use ..
Installation completed, no errors reported.
Generating grub configuration file ... 
Found linux image: / boot/vmlinuz-3.13.0-24-generic 
Found initrd image: / boot/initrd.img-3.13.0-24-generic 
Found linux image: / boot/vmlinuz-3.11.0-19-generic 
Found initrd image: / boot/initrd.img-3.11.0-19-generic 
Found linux image: / boot/vmlinuz-3.11.0-7-generic 
Found initrd image: / boot/initrd.img-3.11.0-7-generic 
Found linux image: / boot/vmlinuz-3.11.0-5-generic 
Found initrd image: / boot/initrd.img-3.11.0-5-generic 
Found linux image: / boot/vmlinuz-3.11.0-4-generic 
Found initrd image: / boot/initrd.img-3.11.0-4-generic 
Found linux image: / boot/vmlinuz-3.11.0-3-generic 
Found initrd image: / boot/initrd.img-3.11.0-3-generic 
Found linux image: / boot/vmlinuz-3.11.0-2-generic 
Found initrd image: / boot/initrd.img-3.11.0-2-generic 
Found Windows Boot Manager on / dev/sda2 @ / EFI / Microsoft / Boot / Bootmgfw.efi 
Adding boot menu entry for the EFI firmware configuration 
done

(перекладено з італійської)



Я пробував ці команди, але застряг у chroot. Я отримую помилку: "chroot: не вдалося запустити

Отримала таку ж помилку, яка відбулася 14.04, мені це допомагає: wiki.ubuntuusers.de/GRUB_2/Reparatur , майже така сама, як відповідь freeseek

1
@Larry Дивіться допис нижче, метод 3 №1 - це ваша проблема, ви не можете використовувати корінь 32-бітної зміни, щоб відновити 64-бітну систему.
eyoung100

Відповіді:


7

Я не перевіряв цього зі зламаною грубкою в 14.04, але мені ніколи не траплялося проблем, користуючись цими інструкціями:
https://wiki.ubuntu.com/Grub2#Recover

Перш за все, ви повинні запустити свою систему з живого CD або usb. Тоді

" МЕТОД 3 - ХРУТ

Цей спосіб інсталяції використовує команду chroot для отримання доступу до файлів зламаної системи. Після видачі команди chroot LiveCD розглядає роботу зламаної системи / як власну. Команди, що виконуються в середовищі chroot, впливатимуть на порушені файлові системи системи, а не на ті, що є в LiveCD.

1) Завантажте на робочий стіл LiveCD (Ubuntu 9.10 або новішої версії). Зауважте, що живий компакт-диск повинен бути таким же, як і система, яку ви виправляєте - або 32-бітною, або 64-бітовою (якщо ні, то chroot вийде з ладу).

2) Відкрийте термінал (Програми> Аксесуари> Термінал).

3) Визначте свій звичайний системний розділ - (перемикач є малим "L")

sudo fdisk -l

Якщо ви не впевнені, запустіть

df -Th  

Шукайте правильний розмір диска та формат ext3 або ext4.

4) Монтуйте звичайний системний розділ:

Замініть правильний розділ: sda1, sdb5 тощо.

sudo mount /dev/sdXX /mnt  

Приклад: sudo mount / dev / sda1 / mnt

5) Тільки якщо у вас є окремий завантажувальний розділ: sdYY - це / boot-розділ (наприклад, sdb3)

sudo mount / dev / sdYY / mnt / boot 
6) Встановіть критичні віртуальні файлові системи:
sudo mount - прив’язати / dev / mnt / dev
sudo mount --bind / dev / pts / mnt / dev / pts
sudo mount - зв’язати / proc / mnt / proc
sudo mount --bind / sys / mnt / sys 
7) Chroot у ваш звичайний системний пристрій:

sudo chroot / mnt 

8) Якщо немає /boot/grub/grub.cfg або це неправильно, створіть його, використовуючи

update-grub 

9) Перевстановіть GRUB 2:

Замініть правильний пристрій - sda, sdb тощо. Не вказуйте номер розділу.

grub-install / dev / sdX 

10) Перевірте встановлення (використовуйте правильний пристрій, наприклад sda. Не вказуйте розділ):

sudo grub-install - перевірити / dev / sdX 

11) Вихід із Chroot: CTRL-D на клавіатурі

12) Відключення віртуальних файлових систем:

sudo umount / mnt / dev / pts
sudo umount / mnt / dev
sudo umount / mnt / proc
sudo umount / mnt / sys 

13) Якщо ви змонтували окремий / завантажувальний розділ:

sudo umount / mnt / boot 

14) Демонтуйте каталог LiveCD / usr:

sudo umount / mnt / usr 

15) Демонтуйте останній пристрій:

sudo umount / mnt 

16) Перезавантажте.

перезавантаження судо 
"

Також це інші способи ремонту збитків: Як я можу відремонтувати грязь? (Як повернути Ubuntu після встановлення Windows?)


1
Крок 3,4 і 9 зробили роботу для мене. Спасибі
ezdazuzena

1
завантажувальний ремонт не вдався до жалю - але це працювало бездоганно для мене
Джон Скарпетейг,

2

Якщо така ж помилка "символ" grub_term_highlight_color "не знайдено", застрягла під час рятування Груба. Спробував ремонт завантаження (рекомендований варіант), але не вийшло!

Рішення: Завантажили завантажувальний boot-repair.iso ( http://sourceforge.net/projects/boot-repair-cd/ ) та зробили завантажувальний usb диск. Завантажившись з нього та підключившись до Інтернету, розпочавши "Рекомендований ремонт", після чого дотримуйтесь інструкцій у декілька кроків (видалено / видалено груб, а потім знову встановлено нову версію), яка працювала для мене! Я думаю, у вашому випадку grub слід видалити, а потім встановити на sda8 замість sdb1.


це працює для мене: я завантажив CD- файл для відновлення завантаження - я використав x64, оскільки установка Ubuntu - це x64. Потім встановлюється ISO через unetbootin . Виконується регулярний ремонт та альта!
Мета

Завантажувальний диск (64 біт 14.04 настільна версія) з ремонтом завантаження також працював для мене, після оновлення з 13.10 до 14.04. Зі свого боку я дотримувався тут інструкцій (2-й варіант) і натиснув "Рекомендований ремонт" в інструменті, а потім груб раптом знову запрацював!
Krøllebølle

2

У мене була така ж проблема. Я здогадуюсь, що, оскільки у мене є два жорсткі диски, система намагається запустити з неправильного диска, де встановлена ​​стара версія GRUB. Моє рішення було запустити Ubuntu за допомогою USB-накопичувача (не важливо, в якій версії). Після запуску ці команди виконають це, запустити як root:

mkdir /tmp/drive
sudo mount /dev/sdX1 /tmp/drive
sudo mount --bind /dev /tmp/drive/dev
sudo mount --bind /proc /tmp/drive/proc
sudo mount --bind /sys /tmp/drive/sys
sudo chroot /tmp/drive
dpkg-reconfigure grub-pc

Де sdX1 повинен бути накопичувачем, де встановлена ​​ваша система. Коли ви запускаєте останню команду, вам слід вибрати диск sdX, хоча я думаю, що запустивши її кілька разів, ви встановите нову версію grub на кожному диску і дасте вам певний розум.


Я отримую кріплення: точка монтажу / tmp / drive / dev не існує
алемюр

1
@Akmur ви забули - прив'яжіть, можливо, або встановіть неправильний диск? --bind приймає файлову систему в накопичувач usb і замінює / dex / sdX1 / dev на usedevice / dev
eyoung100

@Akmur ви, мабуть, встановили неправильний розділ. Коли я згадав sdX1, це має стосуватися вашого завантажувального розділу, який вже повинен містити каталоги dev, proc, sys. Якщо їх немає, то, швидше за все, ви монтуєте неправильний розділ. Якщо ви вважаєте, що встановили правильний розділ, можливо, тоді просто продовжуйте створювати ці відсутні файли з mkdir.
freeseek

1

У мене була така ж помилка при оновленні з 13.10 до 14.04. Ці вказівки виглядали для мене дещо грізними.

Я створив завантажувальний USB-накопичувач із Super Grub Disk на ньому. http://www.supergrubdisk.org/

Завантажений з цього. Під час завантаження сказав йому виявити встановлені ОС. Він знайшов мою установку Ubuntu 14.04, тому я сказав їй це завантажувати. Завантажений без проблем.

У мене в системі вже встановлено Boot Repair. https://sourceforge.net/p/boot-repair

Перемістив це і прийняв зміни за замовчуванням.

Закрити. Виймав USB-диск з гнізда, натискав живлення і чекав, затримавши подих.

Система завантажена нормально! Проблема вирішена.


В ОП заявили, що ремонт завантаження не працює, тому, мабуть, це не відповідь.
mikew незалежно від

1

Я гадаю, що у вашому EFI-розділі є застарілі файли EFI. Існує помилка на стартовій панелі, характерна для ситуації з EFI, і я підозрюю, що стосується Вашого випадку. Це спрацювало для мене після того, як всі інші пропозиції не зробили. Виправлення полягає в оновленні файлів EFI вручну . Нижче наведено прохідний документ. Зауважте, що замість цього вам потрібно буде замінити розділ EFI /dev/sda1.

  1. Завантажте живий компакт-диск
  2. Відкрити xterm
  3. Використовуйте розділений для визначення вашого EFI розділу: sudo parted -l(замініть / dev / sda1 на наступному кроці)
  4. Змонтуйте розділ EFI: sudo mount /dev/sda1 /mnt
  5. Оновіть завантажувальний файл EFI: sudo cp /mnt/EFI/ubuntu/grubx64.efi /mnt/EFI/Boot/bootx64.efi

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.