10 votos

Triple boot macOS High Sierra, Ubuntu, and Windows without rEFInd Arranque triple macOS High Sierra, Ubuntu y Windows sin rEFInd

Actualmente tengo tres sistemas operativos instalados en mi MacBook Air de 2017: macOS, Ubuntu y Windows 10. No podía arrancar en Ubuntu sin rEFInd, pero prefiero fuertemente el gestor de arranque por defecto, porque quiero utilizar la contraseña del firmware (lo cual rEFInd no tiene).

¿Existe alguna forma de que el gestor de arranque de macOS reconozca a Ubuntu sin utilizar un gestor de arranque de terceros?

NOTAS:

  • No quiero que Ubuntu esté establecido como mi sistema operativo por defecto como alternativa. Solo quiero que aparezca en el menú de arranque.
  • No me importa si solo entra en GRUB. Mientras de alguna forma pueda cargar el kernel, está bien.

La salida del comando diskutil list.

/dev/disk0 (interno, físico):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.3 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                 Apple_APFS Container disk1         242.6 GB   disk0s2
   3:           Sistema de archivos Linux                49.9 GB    disk0s4
   4:       Datos básicos de Microsoft WinData           75.1 GB    disk0s5
   5:       Datos básicos de Microsoft Windows           125.1 GB   disk0s6

/dev/disk1 (sintetizado):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      Esquema de contenedor APFS                    +242.6 GB   disk1
                                 Almacenamiento físico disk0s2
   1:                Volumen APFS Macintosh HD            74.0 GB    disk1s1
   2:                Volumen APFS Preboot                 25.1 MB    disk1s2
   3:                Volumen APFS Recovery                506.6 MB   disk1s3
   4:                Volumen APFS VM                      2.1 GB     disk1s4

0 votos

¿Cuál es el año de tu MacBook Air? Lo que realmente quiero saber es cómo se instalan Windows, Ubuntu y rEFInd. ¿Alguno de ellos se instala en el BIOS? ¿Dónde instalaste rEFInd? También sería útil si incluyeras la salida del comando diskutil list. Tu pregunta ya ha sido formulada antes. Hay varias soluciones simples.

0 votos

Hay, de hecho, varias soluciones, pero ninguna de ellas funciona para mí. El año del MacBook Air es 2017. Primero instalé Windows con bootcamp, reduje el volumen de macOS para crear otro volumen de datos para Windows, instalé Ubuntu reduciendo la partición de macOS nuevamente (lo cual rompió las cosas y tuve que reinstalar macOS y restablecer la partición de datos de Windows). Después instalé rEFInd desde el sitio web oficial. Salida de diskutil list: Pastebin

1 votos

Probablemente deberías haber leído esto primero: Instalación de Ubuntu en Mac con macOS y Windows ya instalados. Actualmente estoy publicando una respuesta a tu pregunta. Mi respuesta se basa en cierta medida en el enlace anterior.

5voto

David Anderson Puntos 2189

Segunda respuesta alternativa

Este segunda respuesta difiere de mi primera respuesta de las siguientes maneras.

  • La segunda partición EFI se sustituye por una partición HFS+.

  • La etiqueta que aparece en el gestor de inicio será "Ubuntu" en lugar de la genérica "EFI Boot".

Asumiré lo siguiente:

  • Tienes que instalar Ubuntu para utilizar el método de arranque EFI.
  • Estás usando grub para arrancar Ubuntu
  • Grub arranca desde la partición EFI.
  • Sólo hay una partición EFI.
  • La partición EFI es la primera partición del disco.
  • Sólo hay un disco involucrado y el disco es interno.
  • rEFInd se instala en la partición EFI.

Voy a ofrecer dos formas de resolver su problema. Cada una tiene sus pros y sus contras.

El gestor de arranque del Mac mostrará un sistema operativo si coloca el archivo .efi en la ubicación correcta. Esta ubicación es la System/Library/CoreServices carpeta del volumen en una partición HFS+. El nombre del archivo debe ser boot.efi . Además, puede personalizar el icono que se muestra para el sistema operativo colocando un .VolumeIcon.icns en la carpeta root del volumen en la partición HFS+.

El primer camino.

Nota: Aquí se sigue utilizando rEFInd, pero no como sustituto del gestor de arranque. Podrá utilizar una contraseña de firmware. De hecho, no se muestran los menús de rEFInd. El gestor de arranque de rEFInd sólo arranca silenciosamente grub (que arranca Ubuntu).

  1. Descargue rEFInd desde aquí Sitio web de SourceForge . Supongo que el archivo descargado se llama refind-bin-0.11.2.zip y este archivo se descargó en su ~/Downloads carpeta.

  2. Cree una nueva partición HFS+. Las instrucciones se dan en la sección "Añadir una partición HFS+".

  3. Monte la nueva partición HFS+, introduciendo el siguiente comando.

    sudo  diskutil  mount  disk0s3

    La nueva partición HFS+ tendrá el nombre de volumen Ubuntu .

  4. Instale rEFInd en el volumen de la nueva partición HFS+.

    cd  ~/Downloads/refind-bin-0.11.2
    ./refind-install  --ownhfs  /dev/disk0s3

    Nota: El mensaje de error Could not set boot device property: 0xe00002bc era de esperar y puede ser ignorado.

  5. Configure la aplicación TextEdit. Abra TextEdit y vaya a la ventana "Preferencias...". Desmarque todas las "Opciones", como se muestra a continuación. Cuando termine, salga de TextEdit.

    y1

  6. Utilice el siguiente comando para navegar a la carpeta que contiene el refind.conf archivo.

    cd  /Volumes/Ubuntu/System/Library/CoreServices

    Haga una copia de seguridad de este archivo.

    sudo  cp  refind.conf  refind.conf.orignal

    Añade permisos de escritura al CoreServices y la carpeta refind.conf archivo.

    sudo  chmod  a+w  .  refind.conf

    Abra el archivo en la aplicación TextEdit.

    open  -e  refind.conf
  7. En este volumen, edite el System/Library/CoreServices/refind.conf para arrancar silenciosamente grub (que internamente arrancará Ubuntu). Esto se puede lograr añadiendo las siguientes líneas al final del archivo refind.conf archivo. Deberías poder simplemente cortar y pegar estas líneas. Cuando termine, guarde los cambios y salga de TextEdit.

    #
    # Added to make rEFInd silent. 
    #
    menuentry "Ubuntu" {
        icon \System\Library\CoreServices\icons\os_ubuntu.png
        volume "EFI"
        loader \EFI\ubuntu\grubx64.efi
        ostype Linux
        graphics on
    }
    timeout -1
    hideui all
    scanfor manual
  8. Desmontar el nuevo volumen llamado Ubuntu introduciendo los siguientes comandos.

    cd  ~
    diskutil  unmount  disk0s3

Pros: Ubuntu no se ve afectado, por lo que cualquier actualización de Ubuntu no requerirá atención.

Contras: Es necesario utilizar el gestor de arranque de terceros rEFInd.

La segunda vía.

  1. Cree una nueva partición HFS+. Las instrucciones se dan en la sección "Añadir una partición HFS+".

  2. Monte la partición EFI original y la nueva partición HFS+, introduciendo los siguientes comandos.

    sudo  diskutil  mount  disk0s1
    sudo  diskutil  mount  disk0s3

    La partición EFI original tendrá el nombre EFI y la nueva partición HFS+ tendrá el nombre Ubuntu .

  3. En el nuevo volumen denominado Ubuntu crear las carpetas EFI/ubuntu y System/Library/CoreServices introduciendo los siguientes comandos.

    mkdir  -p  /Volumes/Ubuntu/EFI/ubuntu
    mkdir  -p  /Volumes/Ubuntu/System/Library/CoreServices
  4. Copiar los archivos grub.cfg y grubx64.efi al nuevo volumen llamado Ubuntu . A continuación se indican los comandos necesarios.

    cp  /Volumes/EFI/EFI/ubuntu/grub.cfg  /Volumes/Ubuntu/EFI/ubuntu/grub.cfg
    cp  /Volumes/EFI/EFI/ubuntu/grubx64.efi  /Volumes/Ubuntu/System/Library/CoreServices/boot.efi
  5. Desmonte la partición EFI original y la nueva partición HFS+, introduciendo los siguientes comandos.

    diskutil  unmount  disk0s1
    diskutil  unmount  disk0s3

Pros: No es necesario utilizar el gestor de arranque de terceros rEFInd.

Contras: Si el grubx64.efi o grub.cfg se actualiza, tiene que copiar manualmente estos archivos a un nuevo volumen llamado Ubuntu .

Añadir un icono personalizado

Los pasos siguientes añadirán el siguiente icono de Ubuntu al menú de inicio.

os_ubuntu.png

  1. Descargue una colección de iconos del sitio web de Sourceforge Mac icns .

  2. Utilice la aplicación Finder para abrir el archivo descargado mac-icns.dmg . Supongo que este archivo se ha descargado en su ~/Downloads carpeta.

  3. Montar el volumen llamado Ubuntu introduciendo el siguiente comando.

    sudo  diskutil  mount  disk0s3
  4. Utilice la aplicación Finder para copiar el os_ubuntu.icns en la carpeta root del volumen llamado Ubuntu . También puede utilizar el comando que se muestra a continuación.

    sudo cp  /Volumes/mac-icns/os_ubuntu.icns  /Volumes/Ubuntu/.
  5. Cambiar el nombre del os_ubuntu.icns archivo de iconos a .VolumeIcon.icns . Esto puede lograrse introduciendo el siguiente comando.

    sudo mv  /Volumes/Ubuntu/os_ubuntu.icns  /Volumes/Ubuntu/.VolumeIcon.icns

    Nota: Los archivos que comienzan con un punto ( . ) no suelen aparecer en una ventana de aplicación del Finder.

  6. Utilice la aplicación Finder para expulsar la partición del sistema EFI con el nombre del volumen Ubuntu . También puede utilizar el comando que se muestra a continuación para desmontar el volumen.

    diskutil  unmount  disk0s3
  7. Utilice la aplicación Finder para expulsar el volumen denominado mac-icns .

Añadir una partición HFS+

Nota: Lo que sigue se basa en la salida de diskutil list que ha proporcionado en su pregunta.

  1. Introduzca el siguiente comando en una ventana de la aplicación Terminal. El creará un volumen "Mac OS Extended" llamado "Ubuntu" en una nueva partición.

    sudo  diskutil  apfs  resizeContainer  disk0s2  242300M  HFS+  Ubuntu  200M
  2. Obtenga el UUID del volumen llamado "Ubuntu" introduciendo el siguiente comando.

     diskutil info Ubuntu | grep "Volume UUID"

    El resultado debería ser similar al que se muestra a continuación.

       Volume UUID:              795F14D2-ED1F-3CA0-A004-BD0A27000DC8
  3. A continuación, impida que este nuevo volumen de nombre "Ubuntu" se monte automáticamente, introduciendo los siguientes comandos. Sustituya su UUID por el que se muestra a continuación.

    sudo  bash
    echo  >> /etc/fstab
    echo  UUID=795F14D2-ED1F-3CA0-A004-BD0A27000DC8 none hfs rw,noauto >> /etc/fstab
    exit

    Nota: La forma correcta, para editar el /etc/fstab es utilizar el comando sudo vifs . Utilizando el echo es sólo un atajo rápido.

  4. Utilice la aplicación Finder para expulsar este nuevo volumen. Alternativamente, puede introducir el comando que se muestra a continuación para desmontar este volumen.

    diskutil  unmount  Ubuntu

Si necesitas que te amplíe alguno de los pasos anteriores, házmelo saber.

1 votos

¡Este me funciona perfectamente! ¡Gracias! Además, no es realmente bueno usar TextEdit para la edición de la configuración, ya que marca el archivo de configuración como bloqueado. Usé sudo nano /Volumes/Ubuntu/System/Library/CoreServices/refind.conf para evitar este problema.

0 votos

Kouwei32: Es bueno cuando alguien puede verificar mis pasos. Agregué un comando para cambiar los permisos para que se pueda usar la aplicación TextEdit. Y sí, nano es un buen sustituto.

0 votos

@DavidAnderson ¡Muchas gracias! Esto fue clave para que los tres sistemas operativos arranquen bien. Sin la segunda partición EFS, solo era posible arrancar [macOS o Ubuntu] O [Ubuntu o Windows, a través de GRUB], dependiendo de cómo se configuraba la MBR híbrida y si elegía ocultar la partición principal de APFS. ¿Sabes por qué es así? Incluso con rEFInd, no había una sola instancia en la que los 3 SO fueran arrancables ... hasta que agregué la segunda partición EFS y seguí los pasos en la Primera Manera.

1voto

David Anderson Puntos 2189

Respuesta Original

Mi segunda respuesta difiere de esta respuesta en las siguientes maneras.

  • En la segunda respuesta, la segunda partición EFI es reemplazada por una partición HFS+. Este tipo de partición es más fácil de crear y modificar.
  • En la segunda respuesta, la etiqueta mostrada en el Administrador de Inicio será "Ubuntu" en lugar de la genérica "EFI Boot".

Asumiré lo siguiente:

  • Has instalado Ubuntu para usar el método de arranque EFI.
  • Estás usando grub para iniciar Ubuntu
  • Grub se inicia desde la partición EFI.
  • Solo hay una partición EFI.
  • La partición EFI es la primera en el Disco.
  • Solo está involucrado un disco y el disco es interno.
  • rEFInd está instalado en la partición EFI.

Daré dos formas de resolver tu problema. Cada una tiene sus pros y sus contras.

El Administrador de Inicio de Mac mostrará un sistema operativo si colocas el archivo .efi en el lugar correcto. Este lugar es la carpeta EFI/boot del volumen en una partición EFI. El nombre del archivo debe ser bootx64.efi. Además, puedes personalizar el icono mostrado para el sistema operativo colocando un archivo .VolumeIcon.icns en la carpeta root del volumen en la partición EFI.

La Primera Forma.

Nota: Aquí, se sigue utilizando rEFInd, pero no como reemplazo del Administrador de Inicio. Podrás usar una contraseña de firmware. De hecho, no se mostrarán menús de rEFInd. El gestor de arranque rEFInd solamente inicia silenciosamente grub (que inicia Ubuntu).

  1. Descarga rEFInd desde este sitio web de SourceForge. Asumo que el archivo descargado se llama refund-bin-0.11.2.zip y este archivo fue descargado a tu carpeta ~/Downloads.

  2. Crea una nueva partición EFI. Las instrucciones se dan en la sección "Agregando una Partición EFI".

  3. Descarga el software del Gestor de Arranque rEFInd desde este sitio web de SourceForge.

  4. Instala rEFInd en el volumen de la nueva partición EFI.

    cd  ~/Downloads/refind-bin-0.11.2
    ./refind-install  --usedefault  /dev/disk0s3
  5. Desmonta y monta la nueva partición EFI, ingresando los siguientes comandos.

    diskutil  unmount  disk0s3
    sudo  diskutil  mount  disk0s3

    La nueva partición EFI tendrá el nombre del volumen EFI2.

  6. Configura la aplicación TextEdit. Abre TextEdit y luego ve a la ventana "Preferencias...". Desmarca todas las "Opciones", como se muestra a continuación. Cuando hayas terminado, cierra TextEdit.

    y1

  7. Utiliza el comando siguiente para navegar a la carpeta que contiene el archivo refind.conf.

    cd  /Volumes/EFI2/EFI/BOOT

    Haz una copia de seguridad de este archivo.

    cp  refind.conf  refind.conf.orignal

    Abre el archivo en la aplicación TextEdit.

    open  -e  refind.conf
  8. En este volumen, edita el archivo EFI/BOOT/refind.conf para iniciar grub silenciosamente (lo que a su vez iniciará Ubuntu). Esto se puede lograr agregando las siguientes líneas al final del archivo refind.conf. Deberías poder simplemente copiar y pegar estas líneas. Cuando hayas terminado, guarda los cambios y cierra TextEdit.

    #
    # Agregado para que rEFInd inicie silenciosamente. 
    #
    menuentry "Ubuntu" {
        icon \EFI\BOOT\icons\os_ubuntu.png
        volume "EFI"
        loader \EFI\ubuntu\grubx64.efi
        ostype Linux
        graphics on
    }
    timeout -1
    hideui all
    scanfor manual
  9. Desmonta el nuevo volumen llamado EFI2.

    diskutil  unmount  disk0s3

Pros: Ubuntu no se ve afectado, por lo que las actualizaciones de Ubuntu no requerirán atención.

Contras: Necesitas usar el gestor de arranque de terceros rEFInd.

La Segunda Forma.

  1. Crea una nueva partición EFI. Las instrucciones se dan en la sección "Agregando una Partición EFI".

  2. Monta las particiones EFI originales y nuevas, ingresando los siguientes comandos.

    sudo  diskutil  mount  disk0s1
    sudo  diskutil  mount  disk0s3

    La partición EFI original tendrá el nombre EFI y la nueva partición EFI tendrá el nombre EFI2.

  3. En el nuevo volumen llamado EFI2, crea las carpetas EFI/ubuntu y EFI/boot, ingresando los siguientes comandos.

    mkdir  -p  /Volumes/EFI2/EFI/ubuntu
    mkdir  -p  /Volumes/EFI2/EFI/boot
  4. Copia los archivos grub.cfg y grubx64.efi al nuevo volumen llamado EFI2. Los comandos necesarios se muestran a continuación.

    cp  /Volumes/EFI/EFI/ubuntu/grub.cfg  /Volumes/EFI2/EFI/ubuntu/grub.cfg
    cp  /Volumes/EFI/EFI/ubuntu/grubx64.efi  /Volumes/EFI2/EFI/boot/bootx64.efi

Pros: No necesitas usar el gestor de arranque de terceros rEFInd.

Contras: Si el grubx64.efi o grub.cfg se actualizan, tendrás que copiar manualmente estos archivos al nuevo volumen llamado EFI2.

Agregando un Icono Personalizado

Los pasos a continuación agregarán el siguiente icono de Ubuntu al Menú de Inicio.

os_ubuntu.png

  1. Descarga una colección de iconos desde el sitio web de sourceforge Mac icns.

  2. Usa la aplicación Finder para abrir el archivo descargado mac-icns.dmg. Asumo que este archivo se descargó en tu carpeta ~/Downloads.

  3. Monta el volumen llamado EFI2 ingresando el siguiente comando.

    sudo  diskutil  mount  disk0s3
  4. Usa la aplicación Finder para copiar el archivo de icono os_ubuntu.icns a la carpeta root del volumen llamado EFI2. Alternativamente, puedes usar el siguiente comando.

    cp  /Volumes/mac-icns/os_ubuntu.icns  /Volumes/EFI2/.
  5. Renombra el archivo de icono os_ubuntu.icns a .VolumeIcon.icns. Esto se logra ingresando el siguiente comando.

    mv  /Volumes/EFI2/os_ubuntu.icns  /Volumes/EFI2/.VolumeIcon.icns

    Nota: Los archivos que comienzan con un punto (.) normalmente no se muestran en una ventana de la aplicación Finder.

  6. Usa la aplicación Finder para expulsar la partición de Sistema EFI con el nombre del volumen EFI2. Alternativamente, puedes usar el siguiente comando para desmontar el volumen.

    diskutil  unmount  disk0s3
  7. Usa la aplicación Finder para expulsar el volumen llamado mac-icns.

Agregando una Partición EFI

Nota: Lo siguiente se basa en la salida de diskutil list que proporcionaste en tu pregunta.

Mientras estés iniciado en macOS, ingresa los siguientes comandos en una ventana de aplicación Terminal.

sudo  diskutil  apfs  resizecontainer  disk0s2  242300M  %EFI%  n  200M
sudo  newfs_msdos  -F  32  -v  EFI2  /dev/disk0s3

Si necesitas que explique más alguno de los pasos anteriores, házmelo saber.

0 votos

Desafortunadamente, la primera solución no es la que quería, y la segunda no funciona en absoluto.

0 votos

La segunda solución se basa en soluciones probadas que publiqué anteriormente. Muchos otros usuarios han utilizado con éxito esta solución. Ver aquí y aquí.

1 votos

Quizás no di detalles suficientes. Por ejemplo, en tu caso, necesitarás crear una nueva partición EFI. Esta no puede ser una partición normal formateada en FAT32. Debe ser una partición EFI donde el GUID en la tabla de particiones GPT sea C12A7328-F81F-11D2-BA4B-00A0C93EC93B.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X