En los ordenadores Apple , pmsetes una utilidad de línea de comandos para manipular la configuración de administración de energía en los sistemas operativos Darwin y macOS . Permite asignar ajustes de suspensión, programar los horarios de suspensión y activación, y mostrar información sobre el consumo de energía.
Historia
Esta pmsetutilidad apareció por primera vez en Darwin 6.0.1 y Mac OS X 10.2 "Jaguar" . Se ha actualizado periódicamente desde su lanzamiento y sigue estando disponible en Darwin 21.2.0 y macOS Monterey .
Comportamiento
La utilidad configura o muestra los ajustes de administración de energía . Algunas de las funciones que ofrece están disponibles a través de la interfaz gráfica de usuario (GUI) del panel de preferencias de Ahorro de energíapmset . Sin embargo, permite una mayor flexibilidad y acceso a varias opciones no disponibles en la GUI.
La utilidad puede configurar diferentes ajustes de administración de energía según el escenario de uso. Se pueden aplicar diferentes configuraciones cuando la máquina funciona con un cargador, batería, SAI o los tres. Los indicadores correspondientes son los siguientes:
- -c(cargador), ajuste la configuración utilizada mientras está conectado a un cargador
- -b(batería), ajuste la configuración utilizada cuando se usa con batería.
- -u( UPS ), ajuste la configuración utilizada cuando se utiliza con un UPS
- -a(todos, predeterminado) Ajustar la configuración para todos los escenarios
Se deben proporcionar argumentos adicionales al asignar cualquier configuración de administración de energía. Los argumentos de administración de energía se describen con mayor detalle más adelante. Al ejecutar el comando, solo los argumentos especificados modifican las opciones de administración de energía. Los argumentos ya configurados no se modificarán pmseta menos que se incluyan específicamente.
La utilidad permite programar eventos de activación, suspensión, encendido y apagado. Estos eventos pueden ser recurrentes, basados en combinaciones arbitrarias de días de la semana y horas, o programarse para fechas y horas futuras. La sintaxis para programar un evento es la siguiente:
- pmset [repeat, schedule] [sleep, wake, poweron, shutdown, wakeorpoweron] [<MTWRFSU> <date/time>]
Los eventos previamente almacenados se sobrescribirán al ejecutar este comando. Para programar varios eventos, deben introducirse en una única cadena de comandos. Por ejemplo, para configurar un evento de apagado todos los días de la semana a las 23:59 y un evento de encendido todos los días de la semana a las 7:00, introduzca lo siguiente:
- sudo pmset repeat shutdown MTWRFSU 23:59:00 wakeorpoweron MTWRFSU 7:00:00
El indicador `get` muestra información sobre la configuración actual de administración de energía o un registro de la actividad reciente. Si no se proporcionan argumentos adicionales, el indicador solo mostrará la configuración actual. Los argumentos adicionales para `get` se describen con mayor detalle a continuación. El indicador `get` es el siguiente:
- -gobtener, listar la configuración actual de administración de energía
Para ver los eventos programados actualmente, escriba:
- pmset -g sched
La utilidad también permite configurar las opciones de hibernación y suspensión segura, así como cambiar los perfiles de ahorro de energía.
Configuración de administración de energía
La pmsetutilidad reconoce los siguientes argumentos. Estos pueden pasarse secuencialmente en cualquier orden. Cualquier error de sintaxis o argumento no reconocido provocará un fallo en el comando, lo que generará un mensaje de error y una breve pantalla de ayuda. La configuración de administración de energía solo puede ser modificada por un usuario con privilegios.
- displaysleep– Temporizador de apagado de pantalla en minutos, 0 para desactivar el apagado de pantalla
- disksleep– Temporizador de apagado del disco en minutos, 0 para desactivar el modo de suspensión del disco
- sleep– Temporizador de suspensión del sistema en minutos, 0 para desactivar la suspensión
- womp- Activación mediante paquete Ethernet "mágico": 1 para habilitar o 0 para deshabilitar. Tenga en cuenta que esta configuración solo aparece al ejecutar "pmset -g" si el dispositivo está conectado a una fuente de alimentación. De lo contrario, la configuración womp NO aparecerá al ejecutar "pmset -g".
- hibernatemodeCambiar el modo de hibernación: 0 para RAM activa durante el modo de suspensión; 1 para contenido de RAM escrito en disco y sistema totalmente apagado; 3 para RAM activa y escritura en disco; 5 es igual que el modo 1, pero para usar con memoria virtual segura ; 7 es igual que el modo 3, pero para usar con memoria virtual segura; 25 para hibernación en Mac OS X 10.7 , con contenido de RAM escrito en disco y sistema totalmente apagado.
- hibernatefileCambiar la ubicación del archivo de imagen de hibernación; la imagen solo puede estar ubicada en el volumen raíz.
- ringActivar al sonar el módem, 1 para habilitar o 0 para deshabilitar.
- autorestartReinicio automático tras un corte de energía: 1 para activar o 0 para desactivar.
- dpsCambia dinámicamente la velocidad del procesador en función de la carga: 1 para habilitar o 0 para deshabilitar.
- reduceReducir permanentemente la velocidad del procesador: 1 para habilitar o 0 para deshabilitar.
- powerbuttonPoner la máquina en modo de suspensión al pulsar el botón de encendido en lugar de apagarla, 1 para activar o 0 para desactivar.
- powernapPermite que la máquina se mantenga actualizada incluso mientras está en modo de suspensión. 1 para habilitar o 0 para deshabilitar.
- lidwake(Solo para portátiles) Activar el equipo al abrir la tapa del portátil. Introduzca 1 para activar o 0 para desactivar.
- acwake(Solo para portátiles) Activa el equipo cuando se cambia la fuente de alimentación, por ejemplo, cuando se desconecta la alimentación de CA y el equipo pasa a funcionar con batería. 1 para activar o 0 para desactivar.
- lessbright(Solo para portátiles) Reduce ligeramente el brillo de la pantalla al cambiar a una fuente de alimentación específica: 1 para activar o 0 para desactivar.
- halfdimEl modo de suspensión de la pantalla utilizará un estado de brillo intermedio entre el brillo máximo y el apagado total; 1 para activarlo o 0 para desactivarlo.
- sms(Solo para portátiles compatibles) Utilice el sensor de movimiento repentino para aparcar los cabezales del disco ante cambios bruscos en la fuerza G. Introduzca 1 para activarlo o 0 para desactivarlo.
- haltlevel(Solo UPS) El UPS carga en porcentaje; la máquina se apaga cuando el UPS alcanza un nivel de carga especificado.
- haltafter(Solo UPS) La UPS se carga en minutos y la máquina se apaga después de consumir energía de la UPS durante un número específico de minutos.
- haltremain(Solo UPS) La UPS se carga en minutos y la máquina se apaga cuando queda el tiempo especificado en la UPS.
- ttyskeepawakeEvita que el sistema entre en modo de suspensión inactiva cuando cualquier terminal (como una sesión de inicio de sesión remoto ) está activa; una terminal está inactiva solo cuando su tiempo de inactividad supera el temporizador de suspensión del sistema. 1 para habilitar o 0 para deshabilitar.
- autopoweroff(Alimentación de CA) Donde sea compatible, se habilita por defecto como implementación del Lote 6 de la Directiva Europea de Productos Relacionados con la Energía. Tras permanecer en reposo durante los minutos especificados por autopoweroffdelay, el sistema escribirá una imagen de hibernación y entrará en un modo de reposo de menor consumo del chipset. El despertar desde este estado tardará más que el despertar desde el modo de reposo normal. El sistema no se apagará automáticamente si hay dispositivos externos conectados, si funciona con batería o si está conectado a una red y la activación para el acceso a la red está habilitada.
- autopoweroffdelayRetardo (de alimentación de CA) antes de entrar en el modo de apagado automático. (Valor = número entero, en segundos)
- standbydelaylowRetraso antes de escribir la imagen de hibernación en el disco y apagar la memoria para el modo de espera. standbydelaylowSe utiliza cuando la capacidad restante de la batería es baja. (Valor = número entero, en segundos)
- standbydelayhighRetraso antes de escribir la imagen de hibernación en el disco y apagar la memoria para el modo de espera. standbydelayhighSe utiliza cuando la capacidad restante de la batería es alta. (Valor = número entero, en segundos)
- networkoversleepEsta configuración afecta la forma en que macOS presenta los servicios de red compartidos durante el modo de suspensión del sistema. Esta configuración no se utiliza en todas las plataformas; no se admite la modificación de su valor.
- destroyfvkeyonstandbyDestruye la clave de File Vault al entrar en modo de espera. Por defecto, las claves de File Vault se conservan incluso cuando el sistema entra en modo de espera. Si se destruyen las claves, se le pedirá al usuario que introduzca la contraseña al salir del modo de espera. (Valor: 1 - Destruir, 0 - Conservar). Dado que es esencial que el sistema se apague por completo, también debes configurar `hibernatemode` en 25 (suspensión a disco).
La configuración se puede ajustar de forma independiente para cuando el equipo está conectado a un cargador, cuando funciona con batería (en el caso de un portátil) o cuando funciona con un SAI (si está disponible). También se puede ajustar la configuración para los cuatro escenarios simultáneamente; esta es la opción predeterminada, cuando no se especifica ningún indicador de uso. Se pueden especificar opciones de administración de energía para diferentes perfiles añadiendo los indicadores -c(cargador), -b(batería), -u(SAI) o -a(todos). El siguiente ejemplo configurará el equipo para que entre en modo de suspensión después de 10 minutos y apague la pantalla después de cinco minutos, pero solo cuando funcione con la batería.
- pmset -b sleep 10 displaysleep 5
El siguiente comando asignará ajustes de administración de energía ligeramente diferentes para cuando el equipo se alimente mediante el cargador. En este caso, el equipo se configurará para entrar en modo de suspensión después de 30 minutos y la pantalla se configurará para que nunca se apague, excepto cuando se active mediante el cargador. La ejecución de ambos comandos no interferirá entre sí.
- pmset -c sleep 30 displaysleep 0
Se pueden introducir argumentos en formato serial para configurar o modificar varios parámetros de administración de energía con un solo comando. El siguiente comando configurará la máquina para que nunca entre en modo de suspensión ( sleep 0), habilitará el sensor de movimiento repentino ( sms 1), configurará la pantalla para que entre en modo de suspensión después de 20 minutos ( displaysleep 20), deshabilitará la reducción de velocidad del procesador ( reduce 0), habilitará el atenuado intermedio de la pantalla ( halfdim 1), habilitará la máquina para que se active cuando se abra la tapa ( lidwake 1), evitará que el sistema entre en modo de suspensión cuando haya una sesión tty (como SSH) activa ( ttyskeepawake 1), deshabilitará la activación de la máquina cuando se inserte el adaptador de CAacwake 0 ( ), deshabilitará un reinicio automático después de que se desconecte y restablezca la alimentación ( autorestart 0), habilitará el cambio dinámico de la velocidad del procesador en función de la carga del sistema ( dps 1), habilitará la activación en el anillo del módem ( ring 1), habilitará la activación al recibir un paquete Ethernet "mágico" ( womp 1) y deshabilitará la suspensión del disco duro ( disksleep 0):
- pmset sleep 0 sms 1 displaysleep 20 reduce 0 halfdim 1 lidwake 1 ttyskeepawake 1 acwake 0 autorestart 0 dps 1 ring 1 womp 1 disksleep 0
Dado que el ejemplo anterior no incluía un indicador de uso, la configuración especificada se aplicará a todos los escenarios de uso. Los comandos posteriores que sí especifiquen un indicador de uso solo afectarán la configuración para ese escenario específico. Por ejemplo, pmset -b sleep 10esto hará que el equipo entre en modo de suspensión después de 10 minutos, pero solo cuando la batería esté conectada. El resto de la configuración se aplicará cuando la batería esté conectada, y toda la configuración del ejemplo anterior se aplicará cuando se conecte un cargador o un SAI.
Al menos desde Darwin 9.4 y OS X 10.5.4 "Leopard" , todos los cambios realizados pmsetse guardan en un archivo de preferencias persistente en /Library/Preferences/SystemConfiguration/com.apple.PowerManagement.plist. Este archivo se puede modificar manualmente usando el defaultscomando, pero esos cambios no serán adoptados inmediatamente por el sistema de administración de energía. Las ediciones manuales de com.apple.PowerManagement.plisttambién corren el riesgo de ser sobrescritas. El comando pmset touchvolverá a leer la configuración existente desde el disco y la aplicará al sistema.
Con autopoweroffhabilitado, la máquina entrará en modo de hibernación incluso si hibernatemodees 0. El valor de autopoweroffdelaypuede estar en segundos a pesar de que la página man (para Mavericks, 9 de noviembre de 2012) lo documenta en minutos.
Configuración de programación
Este pmsetcomando permite programar eventos de suspensión, apagado, activación o encendido del sistema. El scheduleargumento se utiliza para configurar eventos de encendido únicos y repeatpara configurar eventos diarios o semanales. La programación de eventos solo puede ser realizada por un usuario con privilegios.
El scheduleargumento reconoce los siguientes argumentos adicionales:
- tipo; uno de sleep, wake, poweron, shutdownowakeorpoweron
- Fecha y hora (solo en el horario); en el formato "MM/dd/yy HH:mm:ss"; debe estar en formato de 24 horas, debe estar entre comillas
- hora (solo repetición); en el formato HH:mm:ss; debe estar en formato 24, pero no tiene que estar entre comillas
- días laborables; un subconjunto de MTWRFSUtales como Mo MTWRFson válidos, al igual que las cadenas weekdays, weekends, yeveryday
- propietario; una cadena que describe a la persona o programa que programa el evento de encendido (opcional)
La utilidad puede ser muy estricta con la sintaxis incorrecta. Cualquier error de sintaxis provocará que el comando falle y mostrará un breve mensaje de ayuda. La sintaxis para un evento programado es la siguiente:
- pmset schedule [sleep, wake, poweron, shutdown, wakeorpoweron] "MM/dd/yy HH:mm:ss"
Solo se puede especificar un tipo de evento (suspensión, activación, etc.), y la fecha elegida debe ser futura. La utilidad espera poder almacenar esta información en la PMU , por lo que podría no funcionar correctamente en hardware que no sea de Apple. La fecha y la hora deben ir entre comillas.
La sintaxis para un evento repetitivo es la siguiente:
- pmset repeat [sleep, wake, poweron, shutdown, wakeorpoweron] [MTWRFSU, weekdays, weekends, everyday] HH:mm:ss
Los eventos programados de activación, suspensión y apagado se almacenan en un archivo de preferencias persistente /Library/Preferences/SystemConfiguration/com.apple.AutoWake.plist. Este archivo se puede editar manualmente mediante el defaultscomando, pero cualquier cambio realizado corre el riesgo de ser sobrescrito. Además, el sistema no aplicará estos cambios de inmediato.
Opciones de lista
El indicador de lista -gmuestra información sobre la configuración de energía actual. El indicador por sí solo, sin argumentos adicionales, mostrará la configuración actual de administración de energía. Los argumentos adicionales mostrarán información más específica. Las funciones de obtención de pmsetno requieren acceso privilegiado. La utilidad reconoce los siguientes argumentos (se puede obtener una lista actualizada con el pmset -g getterscomando no documentado, aunque no muestra todas *loglas variantes):
- livecomo -gsin opción, muestra la configuración actualmente en uso
- custommostrará la configuración personalizada para todas las fuentes de alimentación, aunque es posible que esta configuración no esté en uso actualmente.
- capcapacidades, muestra qué funciones de administración de energía admite la máquina
- schedprogramar, mostrar eventos de inicio, activación, apagado y suspensión programados
- upsmostrará los umbrales de emergencia de UPS
- aco adaptermostrará detalles sobre un adaptador de corriente alterna conectado. Solo compatible con MacBook y MacBook Pro .
- pso battfuente de alimentación, muestra el estado de las baterías y los SAI conectados.
- accpsmostrará detalles de las fuentes de alimentación para los accesorios.
- pslogmostrar un registro continuo del estado de la fuente de alimentación
- rawlogmuestra un registro continuo del estado de la fuente de alimentación leído directamente de la batería.
- rawbattmostrar el estado de la batería
- thermMuestra las condiciones térmicas (no en todas las plataformas).
- thermlogMostrar un registro continuo de notificaciones térmicas (no en todas las plataformas)
- assertionsMuestra el resumen de las afirmaciones de potencia actuales (10.6 y posteriores).
- assertionslogMuestra un registro continuo de las afirmaciones de energía (10.6 y posteriores).
- sysloadMuestra el aviso de carga del sistema (10.6 y posteriores).
- useractivitymostrar el estado de actividad actual del usuario
- useractivitylogmostrar un registro continuo de eventos de actividad del usuario
- logmostrar un registro histórico de eventos
- historymostrar una línea de tiempo de los eventos para la depuración
- historydetailedmostrar tiempos a nivel de controlador para el UUID de un evento histórico
- hidnullmostrar estado de
- userclientsmostrar una lista de procesos que aceptan/envían eventos
- uuidmostrar el UUID de suspensión/activación actualmente activo
- rtcmostrar datos RTC sin procesar
- gettersmostrar una lista de opciones válidas para-g
- powerstatemostrar el estado de energía actual de todos los controladores de dispositivos
- statsmostrar las estadísticas de sueño/vigilia
- systemstatemostrar el estado de energía actual y las capacidades de energía del sistema
- everythingmostrar todo
Solo se puede pasar un argumento get a pmset -g. Por ejemplo, para mostrar eventos programados, escriba pmset -g sched. La utilidad no devolverá un error si se proporciona más de un argumento get, pero todos los demás serán ignorados.
El sleepindicador displaysleeppuede mostrar un valor impuesto de 0 (deshabilitado) junto con una lista de identificadores de proceso que imponen este valor. Se trata de procesos como programas de copia de seguridad que necesitan que el equipo permanezca activo, por ejemplo, hasta que finalice la copia de seguridad.
Ejemplo de uso
Los siguientes ejemplos muestran el resultado del pmsetcomando en un Apple PowerBook G4 con Mac OS X 10.5.4 "Leopard".
El siguiente ejemplo pondrá en modo de suspensión el ordenador correspondiente inmediatamente:
pmset dormir ahora El siguiente ejemplo se aplicará únicamente a portátiles alimentados por batería. Configurará el equipo para que entre en modo de suspensión tras 5 minutos de inactividad, pondrá la pantalla en modo de suspensión tras 2 minutos y apagará el disco duro tras 3 minutos. Solo los usuarios con privilegios pueden ejecutar este comando. Si el comando se ejecuta correctamente y no contiene errores de sintaxis, pmsetfinalizará silenciosamente con un código de salida de 0. Para verificar que el sistema ha aceptado la nueva configuración, ejecute el comando pmset -g.
pmset -b sleep 5 displaysleep 2 disksleep 3 El siguiente ejemplo se aplicará únicamente a máquinas alimentadas por un SAI (Sistema de Alimentación Ininterrumpida). Configurará la máquina para que realice un apagado de emergencia cuando quede un 5 % de batería en el SAI o cuando queden 5 minutos de tiempo estimado de descarga, lo que ocurra primero. Solo los usuarios con privilegios pueden ejecutar este comando. Si el comando se ejecuta correctamente y no presenta errores de sintaxis, pmsetfinalizará silenciosamente con un código de salida de 0. Para verificar que el sistema haya aceptado la nueva configuración, ejecute el comando pmset -g.
pmset -u detener nivel 5 haltremain 5 El siguiente ejemplo se aplicará a todos los escenarios de uso. Configurará la máquina para que se active al recibir un paquete Ethernet "mágico", se active si el módem detecta un timbre y evite que el sistema entre en modo de suspensión si hay una sesión tty activa. Solo los usuarios con privilegios pueden ejecutar este comando. Si el comando se ejecuta correctamente y no contiene errores de sintaxis, pmsetfinalizará silenciosamente con un código de salida de 0. Para verificar que el sistema haya aceptado la nueva configuración, ejecute el comando pmset -g.
pmset -a womp 1 anillo 1 ttyskeepawake 1 El siguiente ejemplo configura un evento de apagado programado único. La máquina se configurará para apagarse el 01/10/2009 a las 22:00 (10 de enero de 2009; tenga en cuenta la sintaxis de hora MM/DD/AAAA centrada en EE. UU.). Solo los usuarios con privilegios pueden ejecutar este comando. Si el comando se ejecuta correctamente y no contiene errores de sintaxis, pmsetfinalizará silenciosamente con un código de salida de 0. Para verificar que el sistema haya aceptado la nueva configuración, ejecute el comando pmset -g sched.
pmset schedule shutdown "01/10/2009 22:00:00" El siguiente ejemplo configura un evento de encendido repetitivo. La máquina se activará o encenderá todos los días laborables a las 8:00 a. m. Solo los usuarios con privilegios pueden ejecutar este comando. Si el comando se ejecuta correctamente y no contiene errores de sintaxis, pmsetfinalizará silenciosamente con un código de salida de 0. Para verificar que el sistema ha aceptado la nueva configuración, ejecute el comando pmset -g sched.
pmset repeat wakeorpoweron MTWRF 08:00:00 Aquí, un ejemplo de la salida de pmset -g. En ese momento, la máquina estaba siendo alimentada por el cargador, mientras que simultáneamente cargaba la batería. El comando imprime la configuración actual.
$ pmset -g Perfiles activos: Alimentación por batería -1 Alimentación de CA -1* Actualmente en uso: dormir 0 SMS 1 pantallas dormir 20 reducir 0 media dimensión 1 lidwake 1 ttyskeepawake 1 despierto 0 autorstart 0 dps 1 anillo 1 womp 1 suspensión del disco 0 Aquí se muestra un ejemplo de la salida pmset -g sched. En este ejemplo, la máquina ya está configurada para que se active o despierte cada día laborable a las 8:00 a. m. El comando imprime el evento repetitivo; observe que la siguiente ocurrencia aparece como un evento de encendido programado.
$ pmset -g sched Eventos de energía repetitivos: Encendido automático a las 8:00 a. m. solo de lunes a viernes Eventos de suministro eléctrico programados: [0] wakeorpoweron el 08/04/08 08:00:00 por Repeating Aquí se muestra un ejemplo de la salida pmset -g. En ese momento, se estaba realizando una copia de seguridad de la máquina. La salida muestra el PID del programa de copia de seguridad.
$ pmset -g | grep sleep suspensión del disco 10 dormir 0 (impuesto por 33927) pantallas dormir 5 $ ps -ef | grep 33927 0 33927 1 0 9:22am ?? 10:54.97 /System/Library/CoreServices/backupd Véase también
Referencias
- pmset(1)Página del manual en Apple Developer Connection
- Administración y programación de energía mediante línea de comandos en uMac, Universidad de Utah.
- standbydelayhigh y standbydelaylow en los foros de Apple
Enlaces externos
- (Código fuente de pmset en Apple Developer Connection)
- pm-hibernate, pm-suspend para sistemas Linux Archivado el 23/01/2010 en Wayback Machine
- pm-pmu para sistemas Linux en hardware Mac
- sys-suspend para sistemas Solaris
- PowerAdm para sistemas Solaris. Archivado el 16 de julio de 2011 en Wayback Machine.
- macOS
- Software de utilidad para macOS
- Software de línea de comandos