Eu costumava lidar com esse tipo de situação ocasionalmente, e quando é um congelamento geral da interface do usuário, nenhuma janela em particular está sem resposta, então não há nada que eu tenha encontrado (nenhum processo que você possa matar) que possa lidar com o problema, além de matar o WindowServer. Isso deve fazer com que a sessão seja desconectada.
No entanto, neste caso em particular, já que matar o WindowServer não retornou o sistema para um estado utilizável, eu suspeito que ele estava condenado de qualquer forma.
No que diz respeito à melhor recuperação possível, uma coisa a notar é que pode ser possível encerrar aplicativos individuais do SSH:
osascript -e 'tell application "TextEdit" to quit'
As aplicações GUI normais não salvam seus arquivos, etc. quando kill
ed, mas quando recebem este evento de saída. É claro que, se o aplicativo exibir uma caixa de diálogo quando você disser para sair, isso não ajuda. E se osascript
pendurar, então o sistema de despacho do Evento da Apple está suspenso ...