就像这样thisuser
,我进入 shell 并运行$ su anotheruser
。它要求输入密码,然后切换用户。然后我运行$ gedit anyfile
。但现在它没有打开 gedit,而是给出了错误:
No protocol specified
(gedit:388): Gtk-WARNING **: cannot open display: :20.0
我如何让它运行?
编辑:
ls -l "$XAUTHORITY"
运行时的输出anotheruser
-rw------- 1 thisuser thisuser 260 Mar 31 22:35 /home/thisuser/.Xauthority
答案1
要以其他用户身份运行 GUI 应用程序(例如,在本例中为 gedit),您可以使用gksudo
。我不确定它是否现在随 Ubuntu 默认提供,但您可以安装:
sudo apt-get install gksu
然后像这样运行:
gksudo -u <user goes here> gedit <file goes here>