¿Cómo se corta el mensaje "Esta computadora ha sido programada para que entre en modo de suspensión automáticamente" y la envíe a suspensión inmediatamente?

2

Se trata de una Mac mini conectada a una pantalla táctil que se ejecuta en una escuela pública y muestra un navegador en modo kiosco. Quiero que la Mac vaya a dormir programada después de que termine la escuela.

El PrefPane de Ahorro de Energía me permite configurar un horario para dormir. Cuando llega el momento en que debe comenzar la suspensión programada, se muestra un mensaje con el mensaje mencionado en el asunto, que cuenta de 10 minutos a 0 más, lo que permite a los usuarios abortar ese proceso.

Para evitar que alguien pueda abortar ese proceso, me gustaría cortar ese mensaje y enviar el Mac a la suspensión inmediatamente cuando haya llegado el momento.

¿Hay alguna posibilidad de dejar ese mensaje fuera?

¿O alguna otra alternativa?

    
pregunta leymannx 22.03.2013 - 14:48

2 respuestas

2

launchd ( ref ) es el método preferido para programar eventos en OS X, en lugar de usar cron .

Aquí hay un método para poner una computadora OS X en modo de suspensión a una hora específica usando las herramientas integradas de OS X sin el aviso de alerta de anulación. La reactivación de la computadora todavía se puede manejar a través de Preferencias del sistema → Ahorro de energía → Programa.

Primero crea el siguiente script de shell en /usr/local/bin llamado sleepnow.sh :

#!/bin/sh
pmset sleepnow

Luego cree un archivo launchd plist para programar un script para que se ejecute diariamente. Se vería así:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>org.myschoolname.sleep</string>
    <key>ProgramArguments</key>
    <array>
        <string>/bin/sh</string>
        <string>/usr/local/bin/sleepnow.sh</string>
    </array>
    <key>StartCalendarInterval</key>
    <dict>
        <key>Hour</key>
        <integer>14</integer>
        <key>Minute</key>
        <integer>00</integer>
    </dict>
</dict>
</plist>

Probablemente querrá poner esto en /System/Library/LaunchDaemons/ con el nombre de archivo org.myschoolname.sleep.plist . Ajuste la hora y el nombre según sea necesario.

Puede cargar el plist usando el comando sudo launchctl load -w /System/Library/LaunchDaemons/org.myschoolname.sleep.plist o reiniciar la computadora y debe cargarse en el inicio del sistema.

Si no está familiarizado con el uso de launchd files y las herramientas de la línea de comandos, busque la aplicación OS X de pago llamada Lingon que maneja la creación del archivo plist y la carga.

Aquí hay una buena referencia sobre pmset , que es la herramienta de línea de comandos para administrar la configuración de energía en OS X .

Aunque pmset se puede usar para establecer los horarios de activación y desactivación, seguirá recibiendo ese cuadro de alerta en la suspensión programada. El comando pmset sleepnow hace que la computadora entre en modo de suspensión inmediatamente sin una alerta.

    
respondido por el crh 22.03.2013 - 21:03
1

Podrías ejecutar una tarea cron que pone la Mac en suspensión a una cierta hora cada día. Esto simplemente provocaría que la Mac se quede en negro, directamente en modo de suspensión, sin ningún tipo de advertencia en un momento específico.

SleepNow es un binario de Unix que pone la Mac en suspensión inmediatamente

Cronnix es una GUI gratuita para configurar trabajos cron

Descargar ambos. Mueva Cronnix a su carpeta / Aplicaciones y SleepNow a una carpeta de su elección. Abra Cronnix y cree un nuevo trabajo, establezca los parámetros de tiempo y en el campo "comando" ingrese la ubicación del binario SleepNow. Suponiendo que todo esté configurado correctamente, la Mac irá directamente al modo de reposo, sin ninguna advertencia o aviso, en los momentos que especifique.

    
respondido por el Mr Rabbit 22.03.2013 - 16:45

Lea otras preguntas en las etiquetas