Como MadHatter declarou a resposta foi usar o VNC. No entanto, sem ter o X no servidor, precisamos usar o ssh para fazer o tunelamento até os convidados.
ssh -v L 5901:127.0.0.1:5901 user@GuestMachine
Quando você se conecta (na máquina onde você executa o ssh) à porta 5901, ele passa pelo túnel para o GuestMachine e se conecta à porta 5901 no loopback (no GuestMachine).
-
No entanto, para mim isso não funcionou. O OSX embutido no VNC ficou suspenso, e o RealVNC rodando no OSX saiu de forma desregrada. É onde cavamos fundo e pegamos o Wireshark e começamos a olhar para os pacotes.
Eu não tinha certeza se o OSX estava fazendo algo bobo com firewall ou alguma outra manipulação inteligente, então eu realmente fiz o ssh no linux box. Minha configuração completa foi então.
OSX(with VNC) ---Linux(with ssh)======Server(no GUI)--Guest(qemu)
No Linux, rastreei os pacotes de rede, filtro no endereço IP do OSX ou vnc para ver os pacotes vnc.
O VNC protocolo RFB foi usado para ver que o VNC havia saído no estágio de segurança ao usar o padrão 'Let' Servidor VNC, escolha 'on VNC Viewer. Eu mudei isso para 'Prefer off' e, embora visualmente o mesmo (saída deselegante), havia mais pacotes de rede.
Olhando mais de perto os pacotes de rede. Quando o servidor enviou 'Server framebuffer parameters' e o cliente enviou 'Client set pixel format' (também 'client set encodings' e 'client frame buffer update request' ambos os lados fizeram um FIN / ACK.
Olhando estes pacotes viu o servidor pedindo 'True color flag: true' e o cliente tinha isto como falso. Volte para VNC Viewer no OSX selecionando 'Options ...' e então 'Expert' vá até ColorLevel e mude isto de 'pal8' para 'full'.
Depois de tudo isso e eu consegui me conectar com o VNC ao convidado! Eu pude então ver que o convidado do qemu estava preso na tela do GRUB. Estar preso no carregador de boot era porque não havia endereço IP. (Mas a razão para isso é outra questão ...)