问题:
从“Ubuntu 软件中心”应用商店安装的应用程序(如 Chromium 和 Visual Studio Code)无法启动。预安装的应用程序(如 Firefox)可以正常工作。我通过从商店 GUI 卸载 Chromium 并通过终端使用 apt 重新安装它来使它正常工作,所以这让我认为它可能与 snap 包管理器有关。从理论上讲,我可以从现在开始使用 apt 安装我的所有应用程序,但我想使用应用商店。
调查:
在终端运行“sudo tail -f /var/log/syslog”并单击Visual Studio Code图标后,无法启动,终端报告以下内容:
Jun 5 10:58:30 robby-zenbook gnome-shell[1716]: g_environ_setenv: assertion 'value != NULL' failed
Jun 5 10:58:30 robby-zenbook code_code.desktop[1716]: snap-confine has elevated permissions and is not confined but should be. Refusing to continue to avoid permission escalation attacks
答案1
对于那些关心的人,我通过卸载并重新安装 snap 来让从“Ubuntu 软件中心”安装的应用程序正常工作。以下是我的步骤:
- 打开终端(当然)
$ sudo apt autoremove --purge snapd
$ sudo apt update
$ sudo apt install snapd
- 重启你的电脑
- 确保 snap 正确安装,
$ sudo snap install hello-world
并且$ hello-world
$ sudo apt install gnome-software-plugin-snap
- 打开‘Ubuntu软件中心’,点击按钮安装插件并重新启动。
从商店下载的应用程序现在应该可以成功启动了。
答案2
如果在 ubuntu 上安装了 apparmor,但未启用或运行,也会出现此错误。解决方案是运行 apparmor 服务,或者如果您真的不想要它,请禁用它。至少,启用 apparmor(systemctl enable apparmor;systemctl start apparmor)解决了我在 ubuntu 19.04 上的问题。
如果没有这个,每次我重新启动时,原来的问题就会重新出现(通过重新安装 snapd 可以在一个启动周期内修复这个问题)。