综合简化了网上的一些资料,现将我的方法介绍下
1.首先应该保证你已经成功安装了evince,这个一般都是默认安装的,如果没有,可以运行sudo apt-get install evince-common 安装。
2.问题一root#evince a.pdf
No protocol specified
No protocol specified
Cannot parse arguments: 无法打开显示:
原因:你曾经切换过用户,然而Xserver默认情况下是不允许别的用户的图形程序的图形显示在当前屏幕上.举个例子:打开端口时是linux# ,然后你linux#su root,
root#evince a.pdf,就会出现上面的问题。因为图形显示权限是linux的,root用户是没有这个权限的。简单来说,虽然你切换到别的用户了,但是当前屏幕的图形显示权限还是原来的用户的。
解决办法: 如果需要别的用户的图形显示在当前屏幕上, 就需要将你要用的这个用户添加权限。root#xhost local:root
3.问题二
解决一的问题后
root#evince a.pdf
(evince:26148): EggSMClient-WARNING **: Failed to connect to the session manager: None of the authentication protocols specified are supported
** (evince:26148): WARNING **: 连接已关闭
Failed to get bus connection: 连接已关闭
原因:还是权限问题,需要sudo 权限
解决办法:root#sudo evince a.pdf
我是新手,有解释不到位的或者错误的,欢迎指正。