Apple Remote Desktop tiene una función de "cortina" que un cliente remoto puede usar para bloquear la pantalla de la Mac que se controla de forma remota. Lo uso cuando me conecto a mi Mac de trabajo desde la Mac de mi casa. La pantalla de mi Mac de trabajo muestra un ícono de candado grande y un mensaje mientras lo controlo de forma remota desde la Mac de mi casa usando Apple Remote Desktop (ARD).
Desafortunadamente, hay un error de algún tipo que hace que la pantalla remota de la Mac permanezca bloqueada, incluso después de desconectarme. (Último ARD y OS X 10.8.2 en ambas máquinas.) Cuando esto sucede, entro al trabajo al día siguiente para encontrar el ícono de bloqueo grande y el mensaje en la pantalla de mi Mac. A pesar de estar físicamente presente frente a la Mac, no puedo encontrar una manera de desbloquear la pantalla.
Por lo general, intento ssh
ingresar a la Mac desde otra máquina y matar procesos. He intentado eliminar el ARDAgent
proceso, el proceso de bloqueo de pantalla (no recuerdo el nombre) y cualquier otra cosa que pueda encontrar con "ard" o "remoto" en el nombre del proceso. Ninguna de estas cosas parece desbloquear la pantalla. Finalmente, recurro a usar osascript -e ...
para decirle a todas mis aplicaciones en ejecución que se cierren con gracia, luego corro shutdown -r now
para reiniciar la máquina.
Mi pregunta: ¿hay alguna manera de desbloquear con éxito una Mac que está atascada en la pantalla de bloqueo ARD, usando ssh
o no?
Una forma de reproducir esto: inicie sesión en la Mac de destino con Escritorio remoto, inicie el modo Cortina y luego, después de finalizar cualquier trabajo que se haya realizado, cierre la sesión del usuario en la Mac de destino mientras aún se encuentra en modo Cortina. Esto dejará la Mac inaccesible para la aplicación de Escritorio remoto e incluso un usuario físico de la computadora, con el ícono de candado grande todavía en la pantalla de la Mac de destino.
No estoy seguro de lo que estoy haciendo para desencadenar esta situación, pero definitivamente no estoy cerrando sesión. De cualquier manera, parece que la solución debería ser la misma.
fuente
Respuestas:
No tengo una Mac con ARD para probar esto, pero esta utilidad sunshine-ard sugiere que puede solucionar el problema. Desde un rápido vistazo al código fuente, solo envía un mensaje CFNotificationCenter para salir del modo de cortina.
No estoy seguro de si hay una manera de conectarse al proceso de cierre de sesión ARD para que se ejecute cada vez que desconecte su sesión, pero al menos podría ejecutarlo a través de SSH según sea necesario.
fuente
La solución más rápida que he encontrado es hacer una conexión SSH a una cuenta de administrador en la computadora remota que está bloqueada.
Tipo:
ps -ax | grep AppleVNCServer
Quieres la línea que dice algo como
Anote el PID que está a la izquierda de esto.
luego ingrese:
Esto obligará a reiniciar la pantalla de bloqueo y volverá a estar disponible.
Sé que esto es como la publicación anterior que acabo de explicar. También se realiza en dos máquinas 10.8.2 con ARD 3.6.1.
fuente
Por lo que vale, este es un error conocido en ARD y aparentemente ha existido por un tiempo. Este KB de Apple tiene un artículo al respecto, pero no hay sugerencias sobre cómo solucionarlo. http://support.apple.com/kb/TS2401
Parte clave del documento:
fuente
OK, no puedo comentar sobre el uso de ARD, no lo tengo, pero esta puede ser una solución adecuada, al menos mientras tanto.
Al usar el uso compartido de pantalla normal, tiene la opción de usar la pantalla de hardware o la virtual. Esto fue algo fácil de usar en 10.7, pero se ha ofuscado en lugar de 10.8 y el comando del elemento del menú para cambiar de pantalla desapareció.
Para usar la pantalla virtual, esto es lo que debe hacer. En primer lugar, tenga otro usuario normal que tenga las opciones relevantes para compartir pantalla permitidas, luego inicie sesión:
Esto no es perfecto, debe asegurarse de que su usuario secundario tenga los derechos de acceso relevantes a los archivos y tal vez tenga que acceder, o puede que tenga que adoptar la práctica incómoda de dejar a su usuario secundario (o "ficticio") inició sesión cuando abandona el escritorio, lo que le permite utilizar su ID principal para compartir la pantalla, pero puede ser útil.
fuente
Apple proporciona un ejemplo de cómo escribir la pantalla de bloqueo en el Capítulo 9 de la Guía de administración de ARD .
Quizás ese script en la página 174 podría acortarse para enviar simplemente la secuencia de desbloqueo:
fuente
No puedo reproducir su configuración exacta ya que actualmente no tengo una segunda máquina con 10.8.2 y 3.6.1, pero esto es lo que probé:
Desde mi Mac de administración 10.8.2 / 3.6.1 bloqueé la pantalla en mi cliente 10.6.8, cerré la sesión del cliente y reproduje la falla de bloqueo de pantalla. Me desconecté de mi sesión ARD y el cliente permaneció con el icono de la pantalla de bloqueo. Me comuniqué con el cliente y después de tratar de obtener un poco de amor de 'kickstart', ejecuté la lista de launchctl que reveló un trabajo 'LockScreen'. Matarlo sin emitir una señal no tuvo ningún efecto, pero enviarlo a -9 eliminó el ícono de bloqueo de la pantalla y después de unos segundos se cargó la ventana de inicio de sesión. Tendrá que probarlo bajo sus condiciones para verificar que esta misma técnica funcione en una máquina bloqueada 10.8.2 / 3.6.1 y cuando el problema sea causado por algo distinto al cierre de sesión del usuario.
fuente
Si estás en El Capitán, las instrucciones anteriores que involucran matar la pantalla de bloqueo no funcionarán. Hay algún proceso que lo sigue iniciando y no pude encontrarlo usando
launchctl list
. También intenté cerrar ARD a través de missh
inicio de sesión, pero tampoco funcionó. Aparentemente, LockScreen.app y ARD son procesos desacoplados o algo así. Terminé teniendo que hacer unshutdown -r now
para forzar un reinicio. Estoy bastante enojado porque Apple no ha solucionado este error o ha proporcionado una solución que, ya sabes, realmente funciona DESPUÉS del hecho.fuente
En la aplicación Escritorio remoto, abra la lista del sistema y resalte una máquina remota que muestra el estado de "Pantalla bloqueada". Despliegue el menú Interact y elija "Desbloquear pantalla ..."
Inmediatamente verá el cambio de estado del sistema de "Pantalla bloqueada" a "Disponible". Luego puede iniciar una nueva conexión en modo de cortina.
fuente