Trabajando con la NVRAM desde el Terminal

Lo más básico

Vamos a empezar con lo más básico que es limpiar la NVRAM durante el arranque. Solo tienes que apagar el Mac, pulsar el botón de encendido e inmediatamente después pulsar el atajo de teclado ⌘⌥PR. Realmente este atajo de teclado corresponde a la anterior forma de denominar a la NVRAM por parte de Apple, PRAM (o memoria de parámetros), pero con los años Apple ha cambiado tanto la denominación como el funcionamiento de la PRAM aunque se ha mantenido el atajo de teclado por motivos de compatibilidad y conocimiento y uso por parte de los usuarios.

Debes mantener este atajo de teclado pulsado hasta que se vuelva a oír el sonido de arranque del Mac (el conocido chime). Lo ideal es que suene 3 o 4 veces para asegurarte que la NVRAM ha sido borrada y se recree, totalmente nueva limpia y comprobar si los errores que estábamos teniendo estaban relacionados con esta memoria no volátil. El reinicio de la NVRAM está siempre relacionado, recuerda, con problema de hardware como no reconocimiento de un módulo Bluetooth, problemas con los puertos USB; etc… Y no relacionado con software como por ejemplo, permisos de los archivos del disco (ahí no tiene nada que hacer).

Desde el Terminal

Con la sesión iniciada podemos manipular, no obstante, la NVRAM para hacer bastantes cosas, como de hecho, reiniciarla, lo que es muy útil para acciones de soporte remoto.

Para empezar vamos a leer la NVRAM directamente desde el Terminal, en Aplicaciones > Utilidades, así que empezaremos introduciendo el siguiente comando:

nvram -xp

Usamos las banderas XP porque la respuesta del Terminal se mostrará en formato XML, que es mucho más legible que si, por ejemplo, utilizamos el comando tradicional:

Nvram -p

Que devuelve un montón de información (de hecho, la misma) pero mucho más compleja de leer e interpretar.

Para limpiar la NVRAM vamos a usar un comando compuesto que borra la NVRAM y luego fuerza un reinicio para que se carguen los nuevos valores. Recuerda que al reiniciar la NVRAM algunos ajustes específicos como el volumen del Mac vuelven a sus valores de fábrica.

nvram -c;sudo shutdown -r now

Con este comando se borra la NVRAM y se solicita el reinicio. Al usar sudo necesitarás la contraseña del administrador.

Borrando variables específicas de la NVRAM

Esto ya es para usuarios expertos. Si quieres borrar solo un valor específico de la NVRAM para que vuelva a usarse el valor por defecto establecido pro el sistema, tienes que usar un comando en el que has de indicar la clave de la variable, por ejemplo:

nvram -d clave_de_variable

Por ejemplo

nvram -d SystemAudioVolume

Usuarios Ninja

La NVRAM no es inmutable, es decir, puedes añadir algunos valores específicos para que el Mac se comporte de una forma específica. Es factible por ejemplo desactivar parte de la RAM, lo que resulta útil para los desarrolladores a la hora de evaluar una aplicación en condiciones diferentes a las de su máquina sin tener que retirar manualmente módulos de memoria (o ahora, que vienen con la RAM soldada), desactivar elementos de hardware y más. Vamos a ver algunos ejemplos más sencillos como:

Desactivar el sonido de arranque del Mac
sudo nvram -d SystemAudioVolume

Arrancar siempre en modo verboso
sudo nvram boot-args="-v"

Forzar el arranque en modo seguro
sudo nvram boot-args="-x"

Argumentos

Si os habéis fijado, los dos últimos comandos están pasando argumentos de arranque al Mac. Estos argumentos de arranque no tienen por qué venir por defecto en la NVRAM y son los que nos permiten hacer cosas específicas con la NVRAM que afectan directamente al comportamiento del Mac y son permanentes, es decir que se mantendrán en la NVRAM hasta que la reinicies o los borres individualmente.

Vamos a ver algunos argumentos:

sudo nvram boot-args="maxmem=16"

Este comando limita la cantidad de memoria RAM que utilizará el sistema. Generalmente es utilizado por desarrolladores de aplicaciones para OS X, de forma que pueden comprobar el rendimiento de sus aplicaciones en entornos de baja cantidad de RAM. “16” en este caso es el número de GB de RAM disponibles. Cuando se elimina esta limitación, el Mac utiliza toda la memoria disponible o la cantidad máxima que es capaz de utilizar.

sudo nvram boot-args="cpus=1"

Este comando limita el número de núcleos utilizados por el ordenador.

Puedes combinar estos comandos en un solo para no tener que introducirlos uno a uno de forma manual: así, si por ejemplo, quieres arrancar en modo línea de comandos y obteniendo toda la información, necesitarás el comando:

sudo nvram boot-args="-v -x"
Para eliminar estos argumentos en la NVRAM tienes dos opciones:

  • Borrar por completo la NVRAM
  • Borrar todos los argumentos usando <sudo nvram -d boot-args
0 0 votos
Article Rating
Subscribe
Notify of
0 Comments
Opiniones Inline
Ver todos los comentarios
0
Me encantaría saber tu opinión, por favor, deja un comentariox
()
x