Abra uma nova janela de terminal em outra sessão de usuário

2

Em um desktop Ubuntu, como eu poderia (logado como root) chamar gnome-terminal para abrir uma janela de terminal dentro de outra sessão de usuário e executar alguns comandos / scripts.

O objetivo é ser capaz de abrir processos de carga pesada em outro terminal de usuário e mantê-lo aberto para oferecer a interação do usuário com ele.

O método "export DISPLAY" não funcionou para mim. Existe outra maneira de resolver isso?

    
por Setlook 22.01.2013 / 12:56

1 resposta

2

Tente definir tanto DISPLAY como XAUTHORITY. Você deve ter permissão para o arquivo proprietários .Xauthority e saber qual display ele usa.

export DISPLAY=':0'
export XAUTHORITY=/home/<owner_of_display>/.Xauthority

Mude: 0 para corrigir, mas geralmente é 0 quando há apenas um usuário. Se você tem acesso root, isso deve funcionar:

root@host:~# sudo su - <username>
username@host:~$ export DISPLAY=':0'
username@host:~$ export XAUTHORITY=$HOME/.Xauthority
username@host:~$ gnome-terminal -x sh -c '<command>; exec bash'

A última linha é sobre como iniciar um novo terminal gnome e executar um comando que você deseja. Havia algumas coisas novas para mim, então pode não funcionar tão simples assim.

    
por 22.01.2013 / 14:08