¿Hay alguna manera de forzar absolutamente un cierre de sesión, apagado o reinicio con pestañas abiertas y documentos no guardados?

15

No pude encontrar ninguna forma relativamente simple de cerrar sesión en un Mac de uso público rápidamente con muchas pestañas abiertas y documentos sin guardar en segundo plano sin recurrir a sudo shutdown -h now.

La razón por la que pregunto es que a veces un usuario tendrá su cuenta iniciada en los iMacs aquí en la escuela e intentarán cerrar sesión y luego irse, pensando que se ha completado, pero el proceso es interrumpido por las aplicaciones de Safari y Office, dejando su cuenta, montajes y sitios web aún accesibles para la siguiente persona que se siente.

Obviamente, una cadena de acceso directo estaría bien en lugar de publicar una nota diciéndole a la persona que escriba cosas arcanas en una terminal. Por ejemplo, solo hacer que intenten encontrar Terminal.app será una tarea difícil.

Esto no parece tener sentido porque el usuario solo puede salir de cada aplicación y hacer clic en algunos cuadros de diálogo, pero a diferencia de usted y yo, a quienes golpear repetidamente Command-Q mientras presiona la barra espaciadora y las teclas D son probablemente una segunda naturaleza.

Bote de salsa
fuente
2
¿Alguien puede responder esta pregunta para cerrar sesión, no para cerrar? Por alguna razón, todo está colgado: puedo pasar el mouse pero no puedo escribir ni hacer clic. Traté de cerrar sesión desde la línea de comando pero la falta de guardar lo canceló por mí. No puedo reiniciar ya que hay otros usuarios con trabajo no guardado que no quiero forzar.
Michael

Respuestas:

7

En mi universidad, tenían una aplicación en el Dock cuyo icono era un cuadrado blanco con LOG OUT en letras rojas grandes. Ejecutó un script (junto con appify o similar) que eliminó todas las aplicaciones en ejecución y cerró la sesión del usuario. Esto también ayudó a las personas que no conocían la Mac y no buscaron en el menú de Apple el elemento del menú de cierre de sesión.

Cajunluke
fuente
5

Puede crear una aplicación AppleScript, guardada en el escritorio u otra ubicación destacada, que dice

  do shell script "sudo shutdown -h now" with administrator privileges

El usuario hace doble clic en la secuencia de comandos de apagado, obtiene un cuadro de diálogo que le solicita la contraseña y, si es correcta, continúa el apagado. Tenga en cuenta que esto solo funciona para cuentas con privilegios de administrador.

Daniel
fuente
4

También está el atajo Command+ Shift+ Option+ Qpara cerrar sesión sin confirmación, pero no ayuda cuando tiene documentos no guardados anteriores a 10.7; simplemente evita tener que golpear Command+ Qrepetidamente. Sin embargo, con la función Reanudar de Lion , esto funciona según lo previsto, dejando documentos sin guardar para la próxima vez que inicie sesión.

David
fuente
A partir de Mojave (10.14.6), esto ya no parece funcionar: Cmd + Shift + Opción + Q me da las mismas indicaciones que un Cmd + Shift + Q.
Greg Price
3

Puede usar un programa de terceros como Power Manager para cerrar sesión automáticamente en usuarios inactivos . Power Manager cerrará las aplicaciones en ejecución y se ocupará de las aplicaciones que intentan bloquear el proceso con hojas o cuadros de diálogo.

Power Manager: desconecta automáticamente al usuario inactivo

Divulgación: trabajo para DssW, los creadores de Power Manager.

Graham Miln
fuente
0

Esto podría lograrse fácilmente con Automator. Al iniciar Automator, seleccione "Aplicación". Tome el comando sudo shutdown -h nowy póngalo en una acción de automatización "Ejecutar script de Shell". Guárdelo como una aplicación y péguelo en el Dock o justo en el medio del escritorio. Para un efecto adicional, haga una búsqueda de imágenes para encontrar un icono apropiado que pueda agregar (usando la ventana de información de su nueva aplicación). Tal vez el clásico botón de E / S o algo así, como estos .

soxman
fuente
El sudocomando requiere una contraseña de administrador y, por lo tanto, no funcionará incrustado en una acción Ejecutar script de Shell. Un AppleScript puede solicitar una contraseña a un usuario administrativo cuando ejecuta el comando, pero un no administrador no puede hacerlo, y un script de shell no puede setuid. Ahora si quisieras escribir un programa de CA ...
Daniel
Muy cierto. Hoy estoy enfermo en casa, así que supongo que no estoy pensando con claridad y me lo perdí. Sin embargo, el espíritu es el mismo, ya que esto se puede lograr fácilmente sin una tonelada de codificación, etc., y se puede implementar fácilmente en todas las máquinas en red.
soxman
Sí, si uno piensa que es una buena idea permitir que los usuarios no administrativos fuercen el apagado de la máquina, independientemente de lo que otros usuarios hayan iniciado sesión actualmente. Por supuesto, ya tienen esa opción aún más abruptamente si tienen acceso físico al botón de encendido. O el enchufe. O el interruptor de circuito.
Daniel