После установки Windows 10 обновляют на моем ноутбуке, это разрушило диспетчер начальной загрузки личинки, и я мог только загрузиться в окнах 10. Я исправил диспетчер начальной загрузки с помощью живого CD с boot-repair
инструмент, но это только распознало раздел Ubuntu а не Windows один.
Таким образом, я отредактировал /etc/grub.d/40_custom
файл и добавил следующее содержание:
menuentry "Windows 10" {
set root='(hd0,3)'
chainloader +1
}
После выполнения sudo update-grub2
, Я получил запись в меню начальной загрузки, но раздел не загружается. Это дает следующую ошибку:
Error: Invalid signature.
Кто-либо знает, как можно преодолеть эту ошибку?
Мой новый дамп восстановления начальной загрузки здесь: http://paste.ubuntu.com/11965327/ и раздел, который я хочу загрузить, являются этим:
sda4: __________________________________________________________________________
File system: ntfs
Boot sector type: Windows 8/2012: NTFS
Boot sector info: No errors found in the Boot Parameter Block.
Operating System:
Boot files: /bootmgr /Windows/System32/winload.exe
Существуют некоторые особенности о Вашей установке:
/dev/sda1
и /dev/sda5
. Мое предположение, каждый от Вашей предыдущей установки Windows, и другой для новой установки, но я не могу быть положителен относительно этого. Я сомневаюсь, вызывает ли это дублирование Вас какие-либо проблемы по сути; я упоминаю это просто, потому что это - знак истории изменений в машине, и такие изменения могут быть оба причиной проблем и мешать выяснять что случилось. /dev/sda4
. Это совершенно законно, но необычно; ESP обычно /dev/sda1
или /dev/sda2
. ESP содержит загрузчики режима EFI и связанные файлы. Моя догадка - то, что ESP был создан поздно в истории машины - возможно, это было только для Ubuntu однажды, и затем Вы установили Windows, который создал ESP в этом необычном месте. На данном этапе Ваш лучший выбор состоит в том, чтобы установить загрузчик режима EFI для Linux. Существует два способа сделать это, которые относительно безопасны и легки. Обе работы лучше всего, если Вы сначала вводите свое встроенное микропрограммное обеспечение и полностью отключаете какую-либо опцию загрузить использование BIOS, CSM или режим прежней версии. (Это - три условия для того же самого.) Иногда эти опции формулируются другой путь - Вы должны включать поддержка UEFI или EFI. Со сделанным, сделайте одну из двух вещей:
/sys/firmware/efi
каталог (если это присутствует, Вы загрузились в режиме EFI), установите boot-repair
пакет и выполните его. Это должно восстанавливать Вашу установку путем установки версии EFI GRUB. Это обычно работает, но иногда это не делает. Я понимаю, что Вы уже выполнили Восстановление Начальной загрузки, но мое подозрение - то, что Вы выполнили его в режиме BIOS, который, конечно, означает, что оно установило бы режим BIOS GRUB, который будет бесполезен для начальной загрузки Windows. не должно быть никакой потребности переустановить Ubuntu и вероятно не переустановить Windows. Режим BIOS и установки режима EFI Ubuntu идентичны за исключением загрузчика (и связанные разделы - но у Вас есть разделы для обработки обоих режимов).
От вывод Вашей команды восстановления начальной загрузки, похоже, что у Вас есть UEFI system†¦
Однако , Ubuntu установлена в non-UEFI режим , и Windows установлен в режим UEFI , таким образом, только один из этих двух собирается работать за один раз, не изменяя начальную загрузку parameters†¦
лучшее, можно сделать: переустановите Windows 10 в non-UEFI режиме или переустановите Ubuntu в режиме UEFI, в зависимости от которого Вы используете больше всего.
В качестве альтернативы настройке двойной загрузки вы можете попробовать установить Grub2Win, который представляет собой реализацию GRUB, устанавливаемого из Windows и поддерживающего UEFI. Обратите внимание, что Grub2Win не интегрируется с существующей установкой GRUB, он создает свою собственную.
После установки он обнаружит ваш вариант загрузки UEFI для Windows.
Он может определить ваш раздел Linux автоматически, если это не так, вы можете добавить пункт меню вручную в C:\grub2\grub.cfg, вы можете получить пункт меню из существующего файла grub.cfg в Linux (обычно находится в / boot/grub/grub.cfg), выглядит примерно так:
menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os --class icon-linux {
insmod gzio
insmod part_gpt
insmod ext2
set root='hd0,gpt6'
search --no-floppy --fs-uuid --set=root ###################
linux /boot/vmlinuz-5.4.0-48-generic root=UUID=################### ro quiet splash $vt_handoff
initrd /boot/initrd.img-5.4.0-48-generic
}
Обратите внимание, что вместо ######, приведенного выше, вы должны использовать UUID своего раздела Linux и должны использовать настоящие имена загрузочных образов, установленных в вашем /boot каталог.
Это позволило мне успешно установить двойную загрузку Windows 10 + Ubuntu 20.04.