2009-07-14 55 views
17

我有ubuntu + x11 + gnome。X11:以另一个用户身份运行gnome应用程序

我想运行一个图形应用程序作为另一个用户。

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

我该如何工作?

+3

将被移到superuser.com – 2009-07-14 08:56:24

回答

2

使用

xdg-su -u user -c command 
1

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

9

执行该命令先:

$ sudo xhost + 

然后运行要作为其他用户的命令:

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

当您完成:

$ sudo xhost - 
+0

很好找。现在,Chrome和Flash可以以不同的用户身份运行,但要获取音频,您需要首先激活当前用户的pulseaudio-daemon。 – 2011-04-30 11:32:03

+7

`sudo xhost + local:`如果你不想连接互联网 – maxy 2011-07-24 11:57:14

+2

它就像地狱一样安全 – mykhal 2013-11-14 15:32:10

0

gksudo -u命令

8

xhost '+si:localuser:USERNAME'

0
gksu -u <user> -c <command> 

更换<user>的用户名来运行命令,并<command>与您要运行的命令。请记住,该程序将在<user>的上下文中运行,但会在当前目录中运行。

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

相关问题