Arranque dual Windows 10 y Ubuntu 16.04 en UEFI

Arranque dual Windows 10 y Ubuntu 16.04 en UEFI

Como usuario de Ubuntu desde hace mucho tiempo, recientemente compré un Acer Revo One que venía preinstalado con Windows 8 en un SSD de 60 GB. Esta vez decidí conservar la licencia. Aproveché la actualización gratuita a MS Windows 10 (elegí hacer una instalación limpia desde un disco USB para poder controlar las particiones en el SSD; dejé suficiente espacio para una partición raíz). Esta instalación funcionó bien.

A continuación, instalé un disco duro y procedí con la instalación de Ubuntu 16.04 utilizando un USB en vivo.

Particioné los discos de la siguiente manera (obtuve esto de GParted después de iniciar desde el USB en vivo de Ubuntu):

/dev/sda

/dev/sdb

Básicamente quiero:

  1. ambos sistemas operativos para arrancar desde el SSD
  2. Ubuntu usará el HDD para una /homepartición de intercambio nominal y/tmp
  3. una partición compartida en la que tanto Windows como Ubuntu pueden escribir

No tengo idea de por qué /dev/sdb3y /dev/sdb4tengo indicadores "msftdata".

El arranque seguro está habilitado (he leído varias publicaciones; algunas dicen que lo deshabilitan al instalar Ubuntu, otras dicen que no es necesario hacerlo). El arranque rápido está deshabilitado.

Ubuntu se instala como se esperaba, sin embargo, al reiniciar (después de haber eliminado el disco USB activo), la máquina arranca solo en Windows.

Revisé el BIOS y no hay ninguna opción para iniciar en nada que no sea el Administrador de inicio de Windows (o el disco USB activo cuando está instalado).

efibootmgr informa:

BootCurrent:0002 
Timeout: 2 seconds  
BootOrder: 0000,0002,0001 
Boot0000* Windows Boot Manager  
Boot0001 ubuntu 
Boot0002* UEFI: SanDisk

Noté que no hay ningún asterisco al lado de Boot0001, lo que implica que no está "activo". Intenté configurarlo como activo y también intenté cambiar el orden de inicio para que Boot0001 sea el primero. Incluso intenté cambiar BootNext a 0001. Ninguno de estos funciona. Noté que los cambios para activar Boot0001 se restablecen en el siguiente inicio, por lo que mis cambios no se conservan.

Leí varias publicaciones que hacen varias recomendaciones:

  1. Algunos dicen instalar Windows primero, otros dicen lo contrario.
  2. Instale Grub nuevamente.
  3. Repare las entradas del cargador de arranque EFI manualmente (montando la partición EFI y copiando/cambiando el nombre de las entradas) o usando Boot-Repair.

Parece que no puedo adjuntar un volcado de la partición EFI, pero aquí hay un fragmento:

./EFI
./EFI/Microsoft
./EFI/Microsoft/Boot
./EFI/Microsoft/Boot/bg-BG
./EFI/Microsoft/Boot/bg-BG/bootmgfw.efi.mui
./EFI/Microsoft/Boot/bg-BG/bootmgr.efi.mui
./EFI/Microsoft/Boot/bootmgr.efi
./EFI/Microsoft/Boot/memtest.efi
./EFI/Microsoft/Boot/boot.stl
./EFI/OEM/Boot
...
./EFI/Microsoft/Boot/en-GB
./EFI/Microsoft/Boot/en-GB/bootmgfw.efi.mui
./EFI/Microsoft/Boot/en-GB/bootmgr.efi.mui
...
./EFI/OEM
./EFI/OEM/Boot
./EFI/OEM/Boot/boot.stl
./EFI/OEM/Boot/bootmgfw.efi
./EFI/OEM/Boot/bootmgr.efi
./EFI/OEM/Boot/memtest.efi
./EFI/OEM/Boot/BOOTSTAT.DAT
./EFI/OEM/Boot/BCD
./EFI/OEM/Boot/BCD.LOG
./EFI/OEM/Boot/BCD.LOG1
./EFI/OEM/Boot/BCD.LOG2
...
./EFI/OEM/Boot/en-GB
./EFI/OEM/Boot/en-GB/bootmgfw.efi.mui
./EFI/OEM/Boot/en-GB/bootmgr.efi.mui
...
./EFI/ubuntu
./EFI/ubuntu/fw
./EFI/ubuntu/fwupx64.efi
./EFI/ubuntu/grubx64.efi
./EFI/ubuntu/grub.cfg
./EFI/ubuntu/shimx64.efi
./EFI/ubuntu/MokManager.efi
./OEM
./OEM/AcerOA30.xml
./OEM/Factory
./OEM/Factory/AMIDEWINx64.exe
./OEM/Factory/AMIFLDRV64.sys
./OEM/Factory/CHK.bat
./OEM/Factory/CHK_DK.bat
./OEM/Factory/Delay-Diags.exe
...

Sé que estoy cerca de resolver este problema, entonces, ¿cuál de las sugerencias anteriores es probable que funcione? Preferiría no llegar a la situación en la que Windows ya no arranca y tengo que empezar de nuevo. Lleva mucho tiempo reinstalar todo.

Una especie de éxito.

Mi BIOS estaba desactualizado, así que lo actualicé.

También utilicé Boot-Repair desde un disco de arranque USB para reparar la partición de arranque EFI (no estoy seguro de que estuviera rota en absoluto).

Luego probé la sugerencia de @fords: ejecutar bcdedit dentro de w$. ¡Éxito! Grub se muestra con una gran cantidad de opciones, siendo Ubuntu la opción predeterminada.

Todo esto fracasó cuando reinicié Windows que, al cerrarlo, decidió aplicar una actualización que impidió que Ubuntu se iniciara. (suspiro profundo).

Todo lo que recibo son unas pocas líneas sugiriendo que lo intente.

sysctl reboot

o

sysctl defaults

Ninguno de los cuales hizo mucho.

¿La actualización de Windows deshizo el bcdedit de Windows y/o la reparación de arranque de Linux? Si es así, ¿cómo evito que las actualizaciones de Windows causen estragos a diario?

Respuesta1

¿Has intentado configurar el cargador de arranque predeterminado en Grub en el símbolo del sistema de Windows? Tuve que hacer eso cuando instalé Ubuntu para ejecutarlo con Windows 10:

bcdedit /set {bootmgr} path \EFI\ubuntu\grubx64.efi

También recomendaría desactivar el arranque seguro. Windows es una bestia malhumorada cuando se trata de arranque dual.

Respuesta2

Después de la actualización del creador de Windows 10, al hacer clic derecho en el logotipo de Windows se muestra la opción PowerShell (Admin) en lugar del símbolo del sistema (Admin). Intenté editar bcdedit usando PowerShell y me equivoqué. Así que no uses PowerShell con bcdedit a menos que sepas lo que estás haciendo.

La solución es buscar el símbolo del sistema, abrirlo en modo administrador (clic derecho -> abrir como administrador) y usar los comandos generales ya mencionados anteriormente.

bcdedit /set {bootmgr} path "\EFI\ubuntu\shimx64.efi"

Si alguien descubre cómo usar PowerShell para bcdedit, publíquelo aquí.

Respuesta3

Lo retiro todo... w$ no había arruinado mi día (sorprendentemente): fue mi poca capacidad para editar /etc/fstab para la optimización de ssd lo que me impidió iniciar Ubuntu. Todo esta bien en el mundo.

¡Espero que mi experiencia sea de ayuda para alguien!

Respuesta4

Otra solución es utilizar dos particiones EFI. Uno solo para Windows, otro para Linux y otros sistemas, en la segunda partición cree una ruta EFI\Microsoft\Boot\ y copie shimx64.efi a bootmgrfw.efi dentro de esta ruta y deje EFI\ubuntu\ intacto. Las computadoras portátiles ACER ven la cuña en esta partición como Administrador de arranque de Windows y también arrancan desde aquí. Veo que os-prober, si en esta partición solo hay bootmgrfw.efi y no BCD, etc., reconoce solo el cargador de arranque de Windows en la primera partición original, sin crear una entrada de menú doble en grub.cfg. Entonces puede iniciar GRUB EFI y llamar a ubuntu o Windows con chaniload correcto a la otra partición. En este modo, Windows mantiene la estructura de partición EFI correcta en la primera partición y no debe sobrescribir el bootmgrfw.efi falso (shim) en la segunda partición durante las actualizaciones. Para mí está trabajando en un ACER 5750g.

información relacionada