在 evince 文档查看器中单击的超链接无法打开,有什么解决方法吗?

在 evince 文档查看器中单击的超链接无法打开,有什么解决方法吗?

按照论坛中另一个帖子的指示,我打开了 /usr/share/applications/mimeinfo.cache 文件来检查是否有正确的引用。并注意到这似乎不是问题,甚至有 3 个可选浏览器可供使用。

x-scheme-handler/http=google-chrome.desktop;chromium-browser.desktop;firefox.desktop;
x-scheme-handler/https=google-chrome.desktop;chromium-browser.desktop;firefox.desktop;

我已经使用终端中的“which”命令检查过程序是否正确命名,如下所示:

$ which google-chrome
$ /usr/bin/google-chrome

因此,google-chrome 应该是首选,但打开 url 的命令似乎并没有到达程序,甚至第二或第三个选项也没有到达。

此外,“帮助”菜单中的“获取在线帮助...”命令不起作用。所以这也不是特定文档文件的问题。

我正在运行 Ubuntu 12.04 LTS。如果您需要询问更多相关详细信息,请提出。如果能就如何解决这个问题提出各种意见就好了,谢谢 :-)

更新:我按照要求从终端运行了 evince。
这是我尝试打开链接时得到的结果:

/opt/google/chrome/google-chrome: line 42: /opt/google/chrome/chrome: Permission denied
/opt/google/chrome/google-chrome: line 42: /opt/google/chrome/chrome: Success

即使我的错误日志不同,我也应该尝试您建议的修复吗?

更新:尝试了@maggotbrain 的解决方案和 BINGO,现在我可以更快地学习 pdf 参考资料,感谢你兄弟!

答案1

上述解决方案都不适用于我,但是这个确实有效:

查看当前忽略列表中的内容

ls -la /etc/apparmor.d/disable

现在将文档查看器(evince)添加到该列表中

sudo ln -s /etc/apparmor.d/usr.bin.evince /etc/apparmor.d/disable/usr.bin.evince 

参与变革

sudo service apparmor restart

答案2

你可能会遇到漏洞使用 apparmor 处理外部 URL。

我在 evince 中打开 URL 时遇到的问题导致每当单击 pdf 文档中的 URL 时都会生成以下错误(在命令行上):

(evince:32091): EvinceView-CRITICAL **: ev_document_model_set_document: assertion
`EV_IS_DOCUMENT (document)' failed
/usr/lib/chromium-browser/chromium-browser-sandbox: error while loading shared
libraries: libpthread.so.0: failed to map segment from shared object: Permission denied

正如建议的那样此评论,我可以通过执行以下操作来解决此 Chromium 问题:

将这些行添加到 /etc/apparmor.d/abstractions/ubuntu-helpers 中的“/usr/lib*/{,*/}Pixr,“:

# From https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/964510/comments/12
# While the chromium and chrome sandboxes are setuid root, they only link
# in limited libraries so glibc's secure execution should be enough to not
# require the santized_helper (ie, LD_PRELOAD will only use standard system
# paths (man ld.so)).
/usr/lib/chromium-browser/chromium-browser-sandbox PUxr,
/opt/google/chrome/chrome-sandbox PUxr,
/opt/google/chrome/google-chrome Pixr,
/opt/google/chrome/chrome Pixr,
/opt/google/chrome/lib*.so{,.*} m,

最后,运行sudo apparmor_parser -T -W -r /etc/apparmor.d/usr.bin.evince

答案3

我有(非 Chrome)Ubuntu 14.04并添加

/usr/lib/chromium-browser/chrome-sandbox PUxr 在字符串之后

/usr/lib/chromium-browser/chromium-browser-sandbox PUxr

在文件中/etc/apparmor.d/abstractions/ubuntu-helpers,然后 sudo service apparmor reload为我解决了这个问题。

成立这里

答案4

这个错误不久前已经修复。文件中的行/etc/apparmor.d/abstractions/ubuntu-helpers已包含在内。

Xpdf但没有问题。

但假设gnome-gmailgnome-gmail-notifier已安装,且已在系统设置中指定,为了使超链接重定向,必须先禁用 evince,然后重新启动 apparmor。(无论如何,这对我有用)。

在此处输入图片描述

sudo ln -s /etc/apparmor.d/usr.bin.evince /etc/apparmor.d/disable/usr.bin.evince
sudo /etc/init.d/apparmor restart

相关内容