Recrear el problema
Antes de proporcionar una respuesta que explique cómo instalar rEFInd para que funcione correctamente en un Mac con un chip T2, primero instalaré incorrectamente rEFInd siguiendo un camino similar al que tomó el OP. Hago esto porque el OP publicó un comentario diciendo lo siguiente.
Desgraciadamente, tenía configurada la opción Sin seguridad antes de instalar rEFInd, así que esto no ayudará a resolver mi problema.
Espero que esta respuesta recién editada demuestre al OP que puedo recrear el problema esbozado en la pregunta del OP, y luego proporcionar los pasos para eliminar el problema.
Estoy usando un mac mini de 2018 que tiene un chip T2. El Mac está configurado con la siguiente configuración.
- La función de contraseña del firmware está desactivada.
- El SIP está activado.
- Secure Boot está configurado como No Security..
- El arranque externo está establecido en Permitir.
- Tanto Mojave como Catalina se instalan en un contenedor APFS. La etiqueta del volumen de Mojave es
Halibut2
y las etiquetas de los volúmenes de Catalina son Anchovy
y Anchovy - Data
.
- Widows 10 está instalado. Para ello se utilizó el Asistente Boot Camp.
- El rEFInd Boot Manager se instala en un
Mac OS Extended (Case-sensitive, Journaled)
volumen con la etiqueta rEFInd
. El refind-install
script con el --ownhfs
se utilizó para instalar rEFInd. Tenga en cuenta que cuando un Mac OS Extended (Journaled)
volumen se sustituye, los resultados son los mismos.
La pregunta del PO dice: "El volumen EFI sólo contiene la carpeta APPLE, incluso después de instalar rEFInd". Este es el resultado esperado ya que al especificar --ownhfs
como opción a refind-instal
instruye explícitamente a este script para que no poner cualquier archivo rEFInd en el volumen EFI.
La salida del comando diskutil list
se muestra a continuación.
/dev/disk0 (internal):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme 251.0 GB disk0
1: EFI EFI 314.6 MB disk0s1
2: Apple_APFS Container disk1 200.0 GB disk0s2
3: Microsoft Basic Data BOOTCAMP 40.6 GB disk0s3
4: Apple_HFS rEFInd 103.8 MB disk0s4
/dev/disk1 (synthesized):
#: TYPE NAME SIZE IDENTIFIER
0: APFS Container Scheme - +200.0 GB disk1
Physical Store disk0s2
1: APFS Volume Anchovy 11.4 GB disk1s1
2: APFS Volume Anchovy - Data 31.3 GB disk1s2
3: APFS Volume Preboot 133.7 MB disk1s3
4: APFS Volume Recovery 1.0 GB disk1s4
5: APFS Volume VM 2.1 GB disk1s5
6: APFS Volume Halibut2 136.7 GB disk1s7
Nota: Se utilizó la utilidad de administración de discos de Windows 10 para crear una partición con formato FAT de 100 MB con la etiqueta REFIND
. Como alternativa, podría haber utilizado MacOS para crear una partición entre el contenedor APFS y la partición de Windows 10 (Boot Camp).
A continuación se muestra una imagen de los iconos del Gestor de Inicio del Mac.
La etiqueta EFI Boot
es utilizado por el gestor de arranque del Mac cuando no existen archivos de etiquetas válidos en la carpeta que contiene el archivo de arranque. Los archivos de etiquetas pueden ser creados mediante el programa MacOS bless
de mando. Sin embargo, cuando existe un Windows 10 correctamente instalado en una unidad interna, entonces la etiqueta predeterminada del Administrador de inicio de Mac es Windows
. El refind-install script no instala una etiqueta de Mac Startup Manager para rEFInd, por lo que la etiqueta de Mac Startup Manager por defecto será EFI Boot.
Al elegir rEFInd desde el Gestor de Inicio del Mac, aparece el siguiente cuadro de mensaje.
Tanto el OP como yo instalamos rEFInd utilizando el --ownhfs
opción. Esta opción instala rEFInd para que parezca que es OS X. El firmware instalado en los Macs más antiguos sería engañado pensando que rEFInd era OS X y el firmware arrancaría rEFInd. Evidentemente, los Macs con un chip T2 siguen siendo engañados para que piensen que una versión de OS X está instalada, pero no arrancarán rEFInd. Como el OP descubrió, haciendo clic en el Update
no resolverá este problema.
Una posible solución sería instalar rEFInd un volumen con formato FAT que exista en una partición de tipo EFI o Microsoft.
Cómo solucionar el problema
A continuación se documentan los pasos a seguir para conseguir una rEFInd correctamente instalada.
-
Arranca con MacOS. En este caso, elijo Catalina.
-
Utilice la aplicación Utilidad de Discos para borrar el volumen con rEFInd
etiqueta. El nombre REFIND
y formato MS-DOS (FAT)
fueron seleccionados. Después, la salida del comando diskutil list
apareció como se muestra a continuación.
/dev/disk0 (internal):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme 251.0 GB disk0
1: EFI EFI 314.6 MB disk0s1
2: Apple_APFS Container disk1 200.0 GB disk0s2
3: Microsoft Basic Data BOOTCAMP 40.6 GB disk0s3
4: Microsoft Basic Data REFIND 103.8 MB disk0s4
/dev/disk1 (synthesized):
#: TYPE NAME SIZE IDENTIFIER
0: APFS Container Scheme - +200.0 GB disk1
Physical Store disk0s2
1: APFS Volume Anchovy 11.4 GB disk1s1
2: APFS Volume Anchovy - Data 31.3 GB disk1s2
3: APFS Volume Preboot 133.7 MB disk1s3
4: APFS Volume Recovery 1.0 GB disk1s4
5: APFS Volume VM 2.1 GB disk1s5
6: APFS Volume Halibut2 136.4 GB disk1s7
-
Descargar rEFInd desde este sitio web a mi carpeta de descargas. He descargado la versión 0.12.0.
-
Introduzca los siguientes comandos en una ventana de la aplicación Terminal para instalar rEFInd en el REFIND
volumen.
Nota: Copiar y pegar estos comandos puede ser más fácil que escribirlos a mano.
cd ~/Downloads/refind-bin-0.12.0
xattr -rd com.apple.quarantine .
sed -i '' "s/sed -i 's/sed -i '' 's/g" refind-install
diskutil unmount disk0s4
sudo ./refind-install --usedefault /dev/disk0s4
diskutil unmount disk0s4
diskutil mount disk0s4
sudo rmdir /tmp/refind_install
Lo anterior sed
corrige un error en el refind-install
script que hace que el script termine antes de tiempo con el mensaje de error sed: -i may not be used with stdin
. Si introduce este comando más de una vez, sólo la primera entrada cambiará el script.
Los comandos anteriores produjeron la siguiente salida.
davidanderson@Anchovy ~ % cd ~/Downloads/refind-bin-0.12.0
davidanderson@Anchovy refind-bin-0.12.0 % xattr -rd com.apple.quarantine .
davidanderson@Anchovy refind-bin-0.12.0 % sed -i '' "s/sed -i 's/sed -i '' 's/g" refind-install
davidanderson@Anchovy refind-bin-0.12.0 % diskutil unmount disk0s4
Volume REFIND on disk0s4 unmounted
davidanderson@Anchovy refind-bin-0.12.0 % sudo ./refind-install --usedefault /dev/disk0s4
Password:
ShimSource is none
Installing rEFInd on macOS....
Installing rEFInd to the partition mounted at /tmp/refind_install
Copied rEFInd binary files
Copying sample configuration file as refind.conf; edit this file to configure
rEFInd.
davidanderson@Anchovy refind-bin-0.12.0 % diskutil unmount disk0s4
Volume REFIND on disk0s4 unmounted
davidanderson@Anchovy refind-bin-0.12.0 % diskutil mount disk0s4
Volume REFIND on disk0s4 mounted
davidanderson@Anchovy refind-bin-0.12.0 % sudo rmdir /tmp/refind_install
Nota: La versión 0.12.0 del refind-install
script contiene un exit
que hace que el script termine antes de tiempo sin que rEFInd sea el predeterminado en el inicio. Esto permite que el script se ejecute sin desactivar el SIP. El procedimiento para hacer que rEFInd sea el predeterminado al inicio se da en un paso posterior.
-
Introduzca el siguiente comando para cambiar la etiqueta en el Gestor de Inicio de Mac para rEFInd de EFI Boot
a rEFInd
.
bless --folder /Volumes/REFIND/EFI/BOOT --label rEFInd
-
Reinicie el mac y mantenga inmediatamente pulsada la tecla option hasta que aparezcan los iconos del Gestor de Inicio del Mac. Para que rEFInd sea el predeterminado en el arranque, mantenga pulsada la tecla control mientras se selecciona rEFInd
.
Después de estos cambios, el Mac arranca correctamente a rEFInd en el inicio.
Nota: No necesité deshabilitar el SIP o arrancar en MacOS Recovery para instalar rEFInd. Es posible que desee hacer uno o ambos como se describe en la página web de Roderick W. Smith El gestor de arranque de rEFInd: rEFInd y la protección de la integridad del sistema . Sin embargo, he observado que la documentación redactada por Roderick W. Smith está empezando a divergir significativamente de la implementación actual del proyecto rEFInd.