Я попытался установить ElementaryOS на свой компьютер и случайно стер свой загрузочный раздел.
Я успешно установил Elementary OS (0.6 Odin, хотя это не имеет значения). Теперь мой grub показывает только Elementary, и я не могу войти в свою Windows.
Я пробовал следующий процесс (os-prober
ничего полезного не сделал):
Бег parted -l
дает следующий результат:
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 473MB 472MB ntfs Basic data partition hidden, diag
3 577MB 593MB 16.8MB Microsoft reserved partition msftres
4 593MB 157GB 157GB ntfs Basic data partition msftdata
5 157GB 158GB 541MB ntfs hidden, diag
2 158GB 158GB 294MB fat32 NO NAME boot, esp
6 158GB 250GB 91.9GB ext4 elementary OS
я знаю это sda2
это новый загрузочный раздел, который я создал. sda4
это раздел Windows 10, и sda5
это раздел восстановления? (Я действительно не уверен в этом).
Я попытался добавить оба sda5
а также sda4
в мой GRUB, добавив следующие строки в /etc/grub.d/40_custom
:
#!/bin/sh
exec tail -n +3 $0
menuentry "Windows 10 Recovery" --class windows --class os {
insmod part_msdos
insmod ntfs
set root="(hd0,msdos4)"
search --no-floppy --fs-uuid --set=root EE92464E92461C09
chainloader +1
}
menuentry "Windows 10" --class windows --class os {
insmod part_msdos
insmod ntfs
set root="(hd0,msdos4)"
search --no-floppy --fs-uuid --set=root 28981AAB981A7790
chainloader +1
}
После использования:
> sudo blkid /dev/sda4
/dev/sda4: UUID="28981AAB981A7790" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="09b51487-4e98-458a-9a50-0a4470e4f844"
> sudo blkid /dev/sda5
/dev/sda5: UUID="EE92464E92461C09" TYPE="ntfs" PARTUUID="6805dc0a-c750-4ef6-a06d-f41ad4ab3f2a"
И, конечно, я сбежал sudo update-grub
.
Однако я получаю ошибка: «Неверный путь к файлу EFI» при попытке загрузиться с этих новых записей.
Также монтируем новый загрузочный раздел и запускаем ls
дает:
EFI
-> BOOT
-> ubuntu
Это означает, что у меня нет загрузочных записей Windows (и восстановления Windows).
Я действительно не хочу снова переустанавливать свои окна и Elementary. Однако я не знаю, как это исправить.
1 ответ
+1
просит команду ‘chainloader’ загрузить 1-й сектор раздела. Но ваш компьютер использует прошивку EFI — это не использует загрузочные секторы, так что «+1» вообще ничего полезного не сделает. Вместо этого параметром команды ‘chainloader’ должен быть путь к *.efi
исполняемый файл, содержащий загрузчик.
Windows всегда устанавливает свой загрузчик по адресу EFIMicrosoftBootbootmgfw.efi
(относительно корня системного раздела EFI, нет основной раздел Windows, поэтому вам также не следует использовать «установить корень»).
(Бит «part_msdos» тоже неверен, так как на вашем диске есть таблица разделов GPT. В основном весь Пользовательский пункт меню специфичен для систем BIOS и не применяется к вашей машине EFI.)
Поскольку вы удалили старый раздел — загрузитесь с установочного компакт-диска Windows (или USB-накопителя), нажмите Shift + F10, чтобы открыть окно консоли, затем используйте bcdboot c:windows
команда для переустановки загрузчика Windows — она скопирует все необходимые файлы, восстановит конфигурационный файл «BCD» и добавит загрузочную запись EFI.
(При создании USB-накопителя Windows с помощью Rufus убедитесь, что вы выбрали режим UEFI, поскольку он делает только один или другой.)
Спасибо за ответ! 🙂 Но я так и не понял, как должна выглядеть запись …
— Я спрашиваю
2 часа назад