Как я могу заставить GRUB работать после восстановления удаленного раздела EFI?
Первый раз выкладываю сюда для помощи.
Итак, в пятницу вечером я играл с GParted и случайно удалил несколько разделов. Один из был неназванным. После этого я перезапустился, и меня приветствовали "Перезагрузка и выбор правильного загрузочного устройства".
Зная, что я облажался, я посмотрел на проблему и пришел к выводу, что я обстрелял раздел EFI, который в основном содержал загрузчик. Один из предложенных способов исправить это - использовать параметр "Восстановление загрузки Windows" для установочного диска. Сегодня утром я попробовал этот вариант, и он сработал! Теперь я могу загрузиться в Windows.
После этого я загрузился на live CD и попытался переустановить GRUB2 с помощью руководства по восстановлению загрузки по адресу https://help.ubuntu.com/community/Boot-Repair Здесь начинается моя проблема.Я не могу заставить GRUB отображаться как мой загрузчик по умолчанию. Вот журнал пастбина из этого: http://paste.ubuntu.com/8345872/
Я следовал другому руководству, в котором говорилось, что мне нужно указать на загрузчик из Windows, используя
bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi
Но даже это, похоже, не работает, так как меня встречают со следующим:
C:\WINDOWS\system32>bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi
The parameter is incorrect.
Запуск bcdedit сам по себе возвращает следующее:
C:\WINDOWS\system32>bcdedit
Windows Boot Manager
--------------------
identifier {bootmgr}
path \EFI\Microsoft\Boot\bootmgfw.efi
description Windows Boot Manager
locale en-US
inherit {globalsettings}
integrityservices Enable
default {current}
resumeobject {cbbe29da-23e7-11e4-9d02-bbb0e4fcb58b}
displayorder {current}
toolsdisplayorder {memdiag}
timeout 30
Windows Boot Loader
-------------------
identifier {current}
device partition=C:
path \WINDOWS\system32\winload.efi
description Windows 8.1
locale en-US
inherit {bootloadersettings}
recoverysequence {cbbe29d8-23e7-11e4-9d02-bbb0e4fcb58b}
integrityservices Enable
recoveryenabled Yes
isolatedcontext Yes
allowedinmemorysettings 0x15000075
osdevice partition=C:
systemroot \WINDOWS
resumeobject {cbbe29da-23e7-11e4-9d02-bbb0e4fcb58b}
nx OptIn
bootmenupolicy Standard
The parameter is incorrect.
C:\WINDOWS\system32>
Я в растерянности, как я мог обойти эту проблему, но что более важно, как я могу получить GRUB2 в качестве моего загрузчика, чтобы я мог попасть в раздел Ubuntu. Любая помощь приветствуется. Спасибо за ваше время.
ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ
Выполнение команды efibootmgr -v выдает мне следующее:
BootCurrent: 0005
Timeout: 1 seconds
BootOrder: 0004,2003,2001,2002
Boot0000* Windows Boot Manager HD(4,96800,32000,d5769c5b-3c38-11e4-9237-c832b0e56206)File(\EFI\Microsoft\Boot\bootmgfw.efi)WINDOWS.........x...B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}...\................
Boot0001* UEFI: Network Card ACPI(a0341d0,0)PCI(1c,3)PCI(0,0)MAC(202564958e96,0)IPv4(0.0.0.0:0<->0.0.0.0:0,0, 0..BO
Boot0002* UEFI: Network Card ACPI(a0341d0,0)PCI(1c,3)PCI(0,0)MAC(202564958e96,0)030d3c000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000..BO
Boot0003* UEFI: M4-CT256M4SSD2 ACPI(a0341d0,0)PCI(1f,2)03120a000400ffff0000HD(1,96800,32000,d5769c5b-3c38-11e4-9237-c832b0e56206)..BO
Boot0004* ubuntu HD(1,96800,32000,d5769c5b-3c38-11e4-9237-c832b0e56206)File(\EFI\ubuntu\grubx64.efi)
Boot0005* UEFI: TSSTcorp CDDVDW SU-208FB ACPI(a0341d0,0)PCI(1f,2)03120a000500ffff0000CD-ROM(1,76991,1240)..BO
Boot2001* EFI USB Device RC
Boot2002* EFI DVD/CDROM RC
Boot2003* EFI Network RC
FDisk возвращает:
WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.
Disk /dev/sda: 256.1 GB, 256060514304 bytes
255 heads, 63 sectors/track, 31130 cylinders, total 500118192 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xd4a6f69c
Device Boot Start End Blocks Id System
/dev/sda1 1 500118191 250059095+ ee GPT
Я запустил GDisk, и он вернул мне это:
GPT fdisk (gdisk) version 0.8.8
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 500118192 sectors, 238.5 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 5657A54D-73E9-4B33-8700-A8E287822B16
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 500118158
Partitions will be aligned on 2048-sector boundaries
Total free space is 879213 sectors (429.3 MiB)
Number Start (sector) End (sector) Size Code Name
1 616448 821247 100.0 MiB EF00
2 1083392 395257855 188.0 GiB 0700 Basic data partition
3 395257856 500117503 50.0 GiB 8300
Третий раздел, где установлена Ubuntu. Раздел 100 МБ - это раздел EFI, созданный программой Windows Start-Up Repair, а второй - раздел Windows 8.1.
2 ответа
Проверьте это:
Загрузите 64-битную версию DVD /Usb Ubuntu
Откройте терминал.
Запустить его:
sudo -i
mount /dev/sda3 /mnt
mount /dev/sda1 /mnt/boot/efi
mount --bind /dev /mnt/dev
mount --bind /dev/pts /mnt/dev/pts
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
modprobe efivars
chroot /mnt
apt-get install --reinstall grub-efi-amd64
update-grub
umount /mnt/boot/efi
umount /mnt
reboot
Должна быть возможность восстановить GRUB, однако я предлагаю попробовать rEFInd, потому что он очень прост в использовании.
rEFInd автоматически находит операционные системы на внутренних и внешних дисках и вообще не требует настройки (но может быть настроен для определенных обстоятельств).
Его можно установить из Windows, а также из реальной среды.
Установка из живого окружения
Вы должны смонтировать раздел EFI как /boot/efi
, Для этого запустите:
sudo mkdir -p /boot/efi
sudo mount /dev/sdXN /boot/efi
Вы должны поместить правильную букву устройства вместо X
и правильный номер раздела вместо N
, После этого вы можете добавить PPA и загрузить файл DEB, который автоматически скопирует rEFInd в нужное место во время установки.
sudo apt-add-repository ppa:rodsmith/refind
sudo apt-get update
apt-get install refind
После перезагрузки вы сможете выбрать, какую ОС вы хотите запустить, без какой-либо дальнейшей настройки.
Установка из Windows
Установка вручную из Windows занимает немного больше времени. Пошаговый процесс описан здесь.