Abrir programa gráfico com su – / sudo

Ao usar linux/unix é comum usar outro login de usuário para inicializar um programa gráfico.

Repetidas vezes passei pela situação seguinte:

sudo su -
[email protected]:~# xeyes
Error: Can't open display:
[email protected]:~# export DISPLAY=:0
[email protected]:~# xeyes
No protocol specified
Error: Can't open display: :0

Como fazer com que o programa gráfico seja iniciado e exibido ?

Em outro console é necessário dar permissão para um login localhost usar o servidor gráfico.

xhost local:claudio

Então pode lançar o programa gráfico no console anterior.

Note, deve trocar o nome de usuário acima, para o usuário de sua máquina.

A explicação para isso é que no mundo unix existe o “X Server”, um servidor gráfico que gerencia as aplicações GUI.

Com isso é possível, por exemplo acessar uma máquina unix remota e de lá iniciar um firefox, onde a exibição gráfica é mostrada no seu computador local.

Written on July 21, 2009