今天在终端下使用gedit时突然出现下面的错误:
No protocol specified
(gedit:14333): Gtk-WARNING **: cannot open display: :0.0
开始还以为自己误操作将什么配置文件弄坏了,后面网上查资料发现是使用了sudo的问题,因为我喜欢用sudo su命令切换到sudo下玩。
下面时网上搜索到的解决办法。
原因:
当使用su 到另外一个用户运行某个程序,而这个程序又要有图形显示的时候,就有可能有下面提示:
No protocol specified
(gedit:14333): Gtk-WARNING **: cannot open display: :0.0
这是因为Xserver默认情况下不允许别的用户的图形程序的图形显示在当前屏幕上. 如果需要别的用户的图形显示在当前屏幕上, 则应以当前登陆的用户, 也就是切换身份前的用户执行如下命令。
xhost +
通过执行这条命令,就授予了其它用户访问当前屏幕的权限,于是就可以以另外的用户运行需要运行的程序了。
本文介绍了在Ubuntu环境下使用gedit编辑器时遇到Noprotocolspecified错误的解决方案。该问题通常发生在使用sudo命令切换用户后,试图在当前用户屏幕上运行图形化程序时发生。解决方法是执行xhost+命令,以允许其他用户访问当前屏幕,从而在不同用户间顺利运行需要图形界面的程序。
2108

被折叠的 条评论
为什么被折叠?



