4

У меня есть ноутбук Sony Vaio. До вчерашнего дня у меня были Windows 7 и Ubuntu 12.04 (Precise Pangolin). Сегодня я обновился до Windows 8, что убило мой экран выбора ОС. Поэтому я загрузился с Ubuntu 12.10 с USB-накопителя и запустил Boot Repair. Это восстановило экран GRUB и позволило мне загрузиться с установкой Ubuntu 12.04, но теперь я могу загрузить Windows 8.

Когда я выбираю вариант, который загружал Windows 7 раньше, похоже, что он хочет запустить Windows 7 (sic) снова (черный экран с текстом "Windows is loading" или что-то в этом роде), но затем через несколько секунд перезагружает компьютер.

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

Вот мой отчет о ремонте загрузки: http://paste.ubuntu.com/1308117/

Обновление 1:

Мне удалось снова вернуться в Windows. Я изменил линию

chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi.bkp

в /etc/grub.d/25_custom (если вы читаете это в поисках справки по той же проблеме: ваш файл может называться как-то иначе)

chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi

и скопировал файл bootmgfw.efi из [Windows partition]/Windows/Boot/EFI в /boot/efi/EFI/Microsoft/Boot . (Файл уже существует, поэтому я переименовал его в bootmgfw.efi.old чтобы сделать его резервную копию.) Наконец, я запустил sudo update-grub .

Когда я перезагрузил компьютер, Windows 8 снова загружалась, но без экрана GRUB. Так угадай, что .. Я не мог загрузиться в Ubuntu сейчас.

В Windows я установил EasyBCD и добавил опцию загрузки Ubuntu. Когда я попытался выбрать это после очередной перезагрузки, это не удалось, потому что он не мог найти какой-либо файл. Я попробовал это с опцией EasyBCD, чтобы автоматически найти мою установку Linux, а также попытался вручную выбрать раздел. Оба имели одинаковый результат.

Поэтому я снова попытался загрузиться с USB-накопителя Ubuntu и запустить Boot Repair. На этот раз у меня появился экран выбора ОС Windows (тот, который я настроил в EasyBCD). Когда я выбрал Windows 8, он перезагрузил компьютер.

Как я могу это исправить эту проблему?

Обновление 2:

Теперь я могу "переключаться" между Ubuntu и Windows 8. Но не через загрузочное меню. (Все ответы, которые я получил до сих пор, не решили мою конкретную проблему.)

Когда я в Ubuntu и хочу загрузить Windows 8, я делаю то, что описал в первом обновлении (скопируйте bootmgfw.efi из каталога Windows и измените одну строку в /etc/gib.d/25_custom). Затем Windows 8 запускается без каких-либо загрузочных меню.

Когда я нахожусь в Windows 8 и хочу загрузить Ubuntu, я запускаю Ubuntu 12.10 с USB-накопителя и просто запускаю Boot-Repair. Затем запускается GRUB 1.99, и когда я выбираю Ubuntu, он работает. (Опции Windows не работают.)

Так что это текущее состояние - я могу переключать ОС, но это настоящая боль.

4 ответа4

4

Вам просто нужно обновить grub. Откройте окно терминала с помощью Ctrl Alt t и введите:

sudo update-grub
2

У меня была точно такая же проблема, как и у вас, и я столкнулся с решением на другом форуме (на самом деле, я думаю, что это вы могли опубликовать это решение). Я исправил это немного по-другому, хотя.

Я следовал инструкциям, которые вы использовали, скопировав bootmgw.efi из раздела Windows в раздел Ubuntu, и я почти уверен, что я также сделал sudo update-grub . Однако вместо того , чтобы вручную изменять файл /etc/grub.d/25_custom как вы делали на первом шаге, я перешел в Grub Customizer (инструмент в Ubuntu, который вы можете иметь или не иметь), щелкнув правой кнопкой мыши соответствующую Windows вариант загрузки (у меня написано "Windows UEFI loader", у вас будет вариант, который загружал Windows 7 до этого, как вы говорите, всего этого разгрома), затем я перешел на вкладку "исходный код" и внес в нее изменения. (Я только что удалил .bkp , точно так же, как вы это сделали, когда делали это вручную.) Затем я сохранил все изменения, и это решило проблему.

Если вам интересно, я использовал Grub Customizer вместо ручного редактирования файла по двум причинам: 1. Я не мог получить доступ к файлу и был слишком ленив, чтобы попытаться получить его, используя ад, который является терминалом Linux; и 2. Я боялся, что простое изменение файла может на самом деле не повлиять на изменения в загрузочном файле (хотя это было чистое предположение; я тоже понятия не имею, как работает загрузка). Я полагал, что Grub Customizer действительно позаботится о том, чтобы изменения действительно были очевидны в загрузочном файле.

Единственное, что маленькие "загрузочные круги" Windows 8 (я не знаю, как их еще называть) появляются на фиолетовом фоне, который использовал Grub; это выглядит немного некрасиво. Я думаю, что это можно исправить и через Grub Customizer.

Обновить

Если вы загружаетесь прямо в Windows, то убедитесь, что GRUB - это первый вариант загрузки в вашем BIOS. Я не могу сказать вам, как это сделать, если я не знаю, с какой утилитой BIOS вы работаете, но я могу дать вам несколько общих шагов.

1. Включите компьютер и получите доступ к меню BIOS. Обычно это делается нажатием F8 после включения компьютера, но это зависит от компьютера (для меня это F2). Быстрый поиск Google относительно вашей конкретной машины покажет, какую клавишу вы должны нажать.

2. Найдите раздел, позволяющий изменить порядок загрузки, и переместите Ubuntu/Linux/Grub (я не уверен в точной метке, но это должно быть очевидно) в начало. Если у вас есть несколько из этих вариантов загрузки, просто выберите один из них.

3. Сохраните и перезагрузите компьютер, и теперь он должен загрузиться в GRUB.

1

Просто следуйте инструкциям ниже:

  1. Вставьте установочный диск Windows 7 или Windows 8 или восстановите диск и загрузите его.
  2. После загрузки на экране Windows выберите "Восстановить компьютер" и в появившемся диалоговом окне просто выберите второй вариант.
  3. Затем выберите "Командная строка" из списка доступных вариантов восстановления.
  4. В командной строке введите BootRec.exe /fixmbr -Нажмите Enter, а затем BootRec.exe /fixboot -Enter
  5. После этих двух команд просто перезагрузите компьютер.

Теперь вы будете в Windows BootLoader и выберите ОС для загрузки. Не беспокойтесь, если у вас нет возможности загрузить Linux 12.04. Вы можете сделать это с помощью специального программного обеспечения под названием EasyBCD.

1

Когда вы устанавливаете Windows, Windows предполагает, что это единственная ОС на компьютере - или, по крайней мере, она не учитывает Linux. Таким образом, он заменяет GRUB своим собственным загрузчиком.

Что вам нужно сделать, это заменить загрузчик Windows на GRUB. Просто chroot в вашу установку и запустите update-grub .

Вот как: Как я могу починить личинку?(Как вернуть Ubuntu после установки Windows?)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .