Execute um programa sob outro usuário com exibição do servidor X

Execute um programa sob outro usuário com exibição do servidor X

Quero poder executar (apenas) um programa/alguns programas sob um usuário de teste chamado "teste" e ao mesmo tempo beneficiar da GUI do programa. Preciso disso porque quero salvar as configurações de teste sem entrar em conflito com minhas próprias configurações. O que descobri até agora é que posso:

  • uso su testpara mudar para o usuário, mas aí não consigo rodar programas com GUI... eles reclamam de não ter display:

    No protocol specified
    

    ** (gedit:17086): AVISO **: Não foi possível abrir o display X Nenhum protocolo especificado

    (gedit: 17086): Gtk-WARNING **: não é possível abrir a tela:: 0

  • use o dm-tool switch-to-user testpara realmente mudar para esse usuário

Alguma idéia de como posso executar programas como outro usuário sem precisar alterar usuários e desktops todas as vezes?

Responder1

Finalmente encontrei uma solução conforme fornecido emesseresponder

Tudo que tive que fazer foi executar o seguinte comando como root:

xhost si:localuser:test

Aparentemente, este comando permite ao usuário usar o servidor de exibição.

Edite esta resposta se você souber mais sobre esse problema.

Responder2

xhost +localhost

então su test..

informação relacionada