无法启动 evince

无法启动 evince

启动 evince 时出现此错误:

EvinceDocument-WARNING **: 10:14:16.337: Error opening directory “/usr/lib/x86_64-linux-gnu/evince/4/backends”: Permission denied

我已经将 evince 置于抱怨模式,因此我认为:

aa-complain /usr/bin/evince

systemctl restart apparmor

状态显示 evince 处于投诉模式:

apparmor_status

22 profiles are in complain mode.
   /usr/bin/evince

我正在使用 overlayfs root 运行 Ubuntu。我还尝试过完全停止 apparmor。

我可以执行 ls -al /usr/lib/x86_64-linux-gnu/evince/4/backends 并正常查看文件。如果我运行 strace evince,我会看到完全相同的输出,即无法打开该目录。

  1. 我该如何修复它?
  2. 如果这是一个致命错误,为什么 evince 将其记录为警告?
  3. 如果 apparmor 允许访问(如 dmesg 输出 (ALLOW) 中的证据),为什么它仍然抱怨?

编辑:#1

1. Ubuntu 19.10 Server as a base (not as a install, nor a debootstrap, but close to a debootstrap)
2. xorg + i3 tiling wm installed
3. no virtualization
4. most other applications work as expected

答案1

我通过以下方式解决了这个问题:

  1. 暂时禁用 evince apparmor 配置文件:apparmor_parser -R /etc/apparmor.d/usr.bin.evince
  2. 通过符号链接永久禁用 evince apparmor 配置文件/etc/apparmor.d/usr.bin.evince via /etc/apparmor.d/disable

答案2

我建议先重新安装 Evince 软件包

sudo apt-get install --reinstall libevdocument3-4 evince-hwp evince

然后重试。

答案3

的文件装甲通过示例命令给出答案:

该目录可与禁用配置文件的选项/etc/apparmor.d/disable一起使用。apparmor_parser -R

sudo ln -s /etc/apparmor.d/profile.name /etc/apparmor.d/disable/
sudo apparmor_parser -R /etc/apparmor.d/profile.name

因此,证明命令如下:

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

相关内容