O Firefox precisa de um display X. Isso não precisa ser uma exibição física na máquina em que está sendo executado: pode ser uma exibição remota ou virtual.
Se você quiser saber onde ele está sendo exibido, observe a variável de ambiente DISPLAY
no processo do Firefox. Note que você precisará ser root (ou mais precisamente para ter as permissões do usuário executando o processo do firefox).
</proc/$pid/environ grep -z '^DISPLAY='
Se o valor estiver no formato :NUMBER
(começando com dois pontos), o servidor X será local. Haverá um soquete chamado /tmp/.X11-unix/XNUMBER
, por exemplo /tmp/.X11-unix/X42
para DISPLAY=:42
. Se a exibição estiver no formato :NUMBER1.NUMBER2
, ignore a parte .NUMBER2
. Em seguida, execute lsof /tmp/.X11-unix/X42
; Um dos processos que tem esse soquete aberto é o servidor X. É provável que seja um servidor X de framebuffer virtual como Xvfb , ou pode ser um servidor para uma estrutura de exibição remota como < a href="http://en.wikipedia.org/wiki/VNC"> VNC ou NX .
Se o valor estiver no formato host:NUMBER
, o display X será remoto. O servidor X é um processo que escuta na porta 6000 + NUMBER. Execute netstat -plnt | awk '$4 ~ ":" (6000 + NUMBER) "$"' {print $7}
para mostrar o PID do processo que está escutando nessa porta. É provável que seja uma conexão ssh.