X11:以另一个用户身份运行gnome应用程序

时间:2009-07-14 08:31:06

标签: linux ubuntu x11 gnome sudo

我有ubuntu + x11 + gnome。

我想以另一个用户身份运行图形应用程序。

但是,当我使用sudo -u otheruser app从命令行启动时,我收到错误“未指定协议”。

我该如何解决这个问题?

7 个答案:

答案 0 :(得分:10)

xhost '+si:localuser:USERNAME'

答案 1 :(得分:9)

首先执行此命令:

$ sudo xhost +

然后以其他用户身份运行您想要的命令:

$ sudo -i -u username
$ command you want to run

完成后:

$ sudo xhost -

答案 2 :(得分:2)

使用

xdg-su -u user -c command

答案 3 :(得分:1)

您可能需要告诉您的X服务器接受来自另一个用户的连接,而不是拥有服务器实例的用户(您)。查看xhost命令。

答案 4 :(得分:0)

gksudo -u命令

答案 5 :(得分:0)

gksu -u <user> -c <command>

<user>替换为用户名以运行命令,并<command&gt;使用您要运行的命令。请记住,程序将在<user>的上下文中运行,但在当前目录中运行。

在弹出窗口中,输入目标<user>的密码。

答案 6 :(得分:0)

此处提供的大多数解决方案未与 Wayland 和 PulseAudio 集成。

我为此用例编写了 ego (Alter Ego),它会自动处理 xhost 以及 Wayland 和 PulseAudio 套接字共享:https://github.com/intgr/ego

所以你只需运行 ego appego -u somebody app

如果遇到问题,请在 GitHub 上打开一个问题。我可能是它的唯一用户,所以还没有进行太多测试。

(我注意到我的答案晚了十年,但希望它会帮助某人:D)