Habéis sido muchos los que habéis comentado en los anteriores artículos que vuestra unidad USB o partición de Mac no booteaba correctamente y se quedaba anclado en alguna parte de la carga del kernel. Como ya expliqué anteriormente pero de forma muy escueta, para solventar este tipo de errores debemos introducir en la pantalla del bootloader los correspondientes boot flags o argumentos de booteo. Estos boot flags cumplen la función de, o bien iniciar el sistema en la forma en la que le indiquemos (modo seguro, modo de usuario único…) o bien desactivar ciertas partes del hardware a través de software para que Mac no las detecte como tal y no cree incompatibilidades a la hora de iniciar el sistema.

image

Hoy voy a redactar una lista con una serie de boot flags que os guiarán a la hora de iniciar vuestro sistema ya instalado o vuestra unidad USB. Algo muy importante a la hora de introducir algún argumento es hacerlo siempre indicando primero en qué modo queremos bootear la unidad (-x, -v o -f), al menos hasta que tengamos el sistema estable y sólo nos falte arreglar nimiedades. Sin más dilaciones, allá vamos:

Modos de booteo

  • -x: (Secure Mode) es el argumento que indica al sistema que debe iniciar de forma segura. Esto es, cargando únicamente los kexts necesarios para bootear, ignorando todos los demás. Es muy útil si acabamos de instalar algún kext que nos genera algún conflicto.
  • -v: (Verbose Mode) es el argumento que indica al sistema que debe iniciar en modo Verbose. Si iniciamos en este modo todos los kexts se cargarán pero se irá mostrando por pantalla la carga de los mismos – al más puro estilo terminal de Linux -. Muy recomendable si algún kext nos genera conflicto y no sabemos cuál es, ya que la ejecución se parará justamente en el kext conflictivo.
  • -f: (Ignore Kext Caches) es el argumento que indica al sistema que debe obviar la caché de los kexts instalados recientemente. Debido a que la instalación manual de kext puede generar un conflicto en el propio kernel indicaremos al sistema que obvie la caché para iniciar correctamente. Éste comando se suele acompañar con el comando -x.

Argumentos para procesadores

  • dartwake=1/0: este argumento soluciona los problemas que tengamos con el reposo de nuestro ordenador. El argumento ‘1’ lo activa y el ‘0’  lo desactiva.
  • dart=0: este argumento desactiva la virtualización de los procesadores de Intel (VT-d). Muy importante a la hora de bootear si nuestro procesador es Intel, aunque en las últimas versiones no es tan necesario debido al bloqueo por BIOS.
  • npci=2000/3000: argumento necesario en el caso de que utilices un DSDT específico para tu placa, o bien instalado a través de Multibeast o bien de forma manual.
  • cpus=1: argumento únicamente usable para los procesadores AMD. Indica a los mismos que sólo se iniciará con un único núcleo, y es necesario en ciertos procesadores de la marca estadounidense.
  • -nossse3bit: este argumento es muy útil para los procesadores AMD con denominación FX. Activa la instrucción del procesador SSSE3 para que pueda bootear con un procesador AMD (recordemos que Mac no es compatible nativamente con éstos).

Argumentos para tarjetas gráficas

  • GraphicsEnabler=Yes/No: este argumento – acompañado de alguno de los anteriores (-x, -v, -f) – indica al sistema si ignorar o no la tarjeta gráfica dedicada. Es únicamente válido para tarjetas AMD o ATI.
  • IGPEnabler=Yes/No: este argumento indica al sistema si ignorar la tarjeta integrada, que a menudo suele ser Intel o AMD.
  • IGPlatformID=[ ID de tu gráfica de Intel ]: en el caso de que sólo dispongas de una tarjeta gráfica Intel y no reconozca la aceleración gráfica de la misma, este argumento es muy útil si conoces el ID de tu tarjeta. Como existen infinidad de modelos, adjunto una lista de los mismos aquí.
  • nv_disable=1: este argumento indica al sistema que ignoramos la tarjeta dedicada de NVidia de nuestro ordenador. Muy útil en el caso de éstas, ya que no booteará sin este argumento.
  • nvda_drv=1: este argumento indica al sistema que detecte la tarjeta dedicada de Nvidia. Sólo debemos iniciar con este argumento si ya hemos instalado los drivers de la web de NVidia (ojo, los de Mac, no los de Windows) e iniciado previamente con nv_disable=1.
  • PCIRootUID=1/0: este argumento solventa ciertos problemas de incompatibilidad con las gráficas de AMD. Si usamos el ‘1’ de argumento solventará los errores que podamos tener con la tienda de Mac.

Ya he conseguido hacer que funcione, ¿y ahora qué?

Si has conseguido arreglar ciertos problemas de inicio y detección de hardware a través de los argumentos, es tan simple como añadir los mismos al archivo org.chameleon.boot.plist alojado en la carpeta Extra del sistema. Como este archivo es un archivo XML modificado, existen multitud de opciones para modificarlo, es por ello que abarcar aquí todas sería poco menos que imposible. Por tanto os dejo un enlace a la web de tonymacEn el caso de que hayas introducido algún argumento erróneo en este archivo, deberéis iniciar con el argumento -F (mayúscula, ojo) para obviar los mismos a la hora de bootear.

Y estos son, a modo de resumen, los argumentos más utilizados a la hora de iniciar nuestro sistema. Cabe añadir que existen infinidad de argumentos más, sobretodo para los procesadores de AMD. Sin embargo, los mostrados aquí son los más útiles, aunque el artículo sigue abierto a posibilidad de añadir más si así lo requerís. ¿Os han funcionado? Dejadnos vuestros comentarios.