Reconstrucción de archivos EFI de Windows en / partición de arranque (arranque dual Linux + Windows)

17

Arranco dual Windows 10 (actualización previa al aniversario) y Fedora 24 en un Lenovo IdeaPad N580 (Intel Pentium B960 2.2GHz, 4GB RAM, UEFI con arranque seguro desactivado). Originalmente tenía solo Windows 10 y luego instalé Fedora 23 junto con él y todo funcionó bien: funcionó también cuando actualicé a Fedora 24. Hace un tiempo, decidí que quería probar Ubuntu y lo instalé solo sobrescribiendo la raíz, / boot y particiones SWAP y mantener mi partición de inicio. Windows 10 aún puede arrancar aquí. Luego decidí que no me gustaba Ubuntu y reinstalé Fedora, con el instalador 24, tratando de hacer exactamente lo que hice con Ubuntu. La interfaz era un poco diferente, pero estoy seguro de que lo hice correctamente: después de configurar toda la partición, me apareció una ventana emergente que decía "Solo tocaremos estas particiones". y las particiones que enumeró fueron root, / boot y SWAP. Nada más.

Luego, cuando terminó de instalar, reinicié. Las únicas opciones en el menú de GRUB eran Fedora y Fedora Recovery, nada más. Sin ventanas

Intenté instalar rEFInd, que me ha funcionado en el pasado. Pero no ayudó, me dio esas mismas dos opciones.

La partición de Windows todavía existe y puedo acceder a ella desde Fedora; los archivos importantes como / bootmgr y / Boot / BCD parecen intactos. La partición de Windows está en / dev / sda5.

Además, en la configuración del BIOS donde solía aparecer Windows Boot Manager, no lo hace. Simplemente tiene rEFInd y una entrada con el número de modelo de mi disco duro, que supongo que me lleva al menú de GRUB. (Sin embargo, no he intentado ponerlo en la parte superior de la lista y reiniciar, soy un poco vago: P)

Alguien puede ayudar?

ACTUALIZACIÓN: Manoj identificó el problema: al formatear la partición / boot estaba eliminando los archivos EFI de Windows. Entonces necesito reconstruir los archivos en /boot/efi/EFI/Microsoft. Creo que he reconstruido el directorio /boot/efi/EFI/Microsoft/Boot, pero necesito los otros archivos Microsoft. ¿Alguien podría decirme qué archivos necesito allí?

El inicializador
fuente
oh, la bootmgfw.efi, bootmgr.efiy memtest.efino hay ...
TheInitializer
ESOS ARCHIVOS ESTÁN EN windows partition/Windows/Boot/EFI!!!
TheInitializer
Como no hizo una copia de seguridad (¿por qué?), Debe modificar su pregunta. "¿Cómo puedo recrear archivos de arranque UEFI de Windows?"
Xalorous
Creé una carpeta EFI a partir de archivos que encontré en mi partición de Windows, ¿crees que funcionará? storage2.static.itmages.com/i/16/0809/…
TheInitializer

Respuestas:

19

Como ha copiado todos los archivos necesarios boot/efi/EFI/Microsoft/Boot, debe reconstruir la configuración del cargador de Windows. Necesitará un USB o DVD de arranque de Windows (será preferible 64 bits).

1: Arranque desde su medio de arranque. Asegúrese de que está iniciando en modo UEFI.

2: En la primera pantalla (donde le pide que elija el idioma y el teclado), presione Shift + F10. Esto le dará un símbolo del sistema.

3: Escriba diskparty luego list disk(para enumerar todos los discos disponibles). Seleccione el disco duro apropiado escribiendo select disk #.

4: Ahora escriba list partitiony asegúrese de que haya una partición de tipo system(la partición efi). Seleccione esta partición escribiendo select partition #y asígnele una letra de unidad temporal, digamos Gescribiendo assign letter=G.

5: Solo para asegurarse de que la letra de la unidad esté asignada correctamente, escriba list vol. Debería ver un volumen con drive letter (Ltr) as G&file system (Fs) as FAT32

6: cierre diskpartescribiendo exit. Asegúrate de estar dentro X:\Sources.

7: Tipo cd /d G:\EFI\Microsoft\Boot\. Ahora ejecute estos comandos uno por uno.

bootrec /scanos     
bootrec /fixmbr    
bootrec /fixboot
bootrec /rebuildbcd    
bcdboot C:\Windows /l en-us /s G: /f ALL

8: Cierre el símbolo del sistema y reinicie el sistema. Ahora debería estar iniciando en Windows.

9: Por supuesto, puede que no tenga o no tenga el menú de grub ahora. Pero instalar grub es mucho más fácil. Siga cualquiera de estos enlaces para más información.

enlace1 , enlace2 , enlace3

Fuentes: 1 , 2 , 3 , 4 .

EDITAR : asegúrese de eliminar la letra de unidad G asignada a la partición efi lo antes posible para evitar que aparezca en Mi PC.

Manoj
fuente
Gracias, pero no tengo un USB de recuperación (algo estúpido de mi parte) y no puedo crear uno sin acceso a Windows. Trataré de encontrar una manera de hacer uno
TheInitializer
1
¡Muchas gracias, esto funcionó! Publicación desde Windows: D
TheInitializer
1
bootrec /rebuildbcdfalló para mí, pero funcionó de todos modos después de que lo omití.
en4bz
1
Gracias por los enlaces de origen , ayudó a comprender y aplicar solo lo necesario. Luego, para volver a cargar el cargador de arranque, utilicé bcdedit como se describe aquí : bcdedit /set "{bootmgr}" path \EFI\refind\refind_x64.efi
Pau Coma Ramirez, el
¿Qué puede hacer si su partición no está listada list disk?
Harsha Goli
0

Antes de comenzar, haga una copia de seguridad de su partición de arranque con mkdir $HOME/backup && sudo cp -R /boot $HOME/backup. La partición de arranque generalmente está limitada a 100 MB, por lo que debería ser realmente pequeña.

Si todavía tiene un medio de arranque de Windows 10 (como una memoria USB o un DVD), podrá encontrar los archivos EFI allí.

Si no tiene un medio de arranque de Windows, puede montar el ISO ( descargue si es necesario ) usando el comando sudo mkdir /tmp/win10iso && sudo mount -o loop /location/of/win10.iso /tmp/win10iso.

Cuando haya copiado con éxito esos archivos EFI a la partición de Windows, agregue una entrada al archivo /etc/grub.d/40_custom.

La entrada se vería así:

menuentry 'Windows 10' {
set root='(hd0,msdos5)'
chainloader +1
}

En la configuración GRUB, hdXsignifica /dev/sdXy msdosYsignifica /dev/sdXY. Tenga en cuenta que hdX comienza en 0 y / dev / sdX comienza en A.

Una vez hecho esto, actualice su GRUB con sudo update-grub2. La entrada de arranque de Windows ahora debería estar allí.

Cóndor
fuente
Gracias, estoy descargando el ISO ahora mismo (¡es un archivo grande!)
TheInitializer
He montado el ISO y tengo una pregunta: ¿qué archivos debo copiar y en qué carpeta? Mi conjetura es de Windows ISO/boota /boot/efi/EFI/Microsoft, pero realmente no estoy seguro.
TheInitializer