升级到 24.04 后,Outline Client 和 Outline Manager appimages 都不再起作用。
我确实libfuset64
按照其他地方的建议进行了安装,但是出现了 SUID 权限错误。
$ ./Outline-Client.AppImage
[584847:1001/220953.594798:FATAL:setuid_sandbox_host.cc(157)] The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now. You need to make sure that /tmp/.mount_Outlintr1Gf9/chrome-sandbox is owned by root and has mode 4755.
[1] 584847 trace trap (core dumped) ./Outline-Client.AppImage
如果我运行大纲,./Outline-Client.AppImage --no-sandbox
那么它可以完美地工作,但这应该不太安全。
我想知道是否有一种方法可以运行大纲而不必使用--no-sandbox
标志
我们不应该像这个问题的答案中所建议的那样在我们的系统上完全禁用 AppArmor 的用户命名空间限制,因为这会产生安全问题,请参阅此博客。
更好的方法是创建一个 apparmor 配置文件,允许特定应用程序使用非特权用户名空间。
/etc/apparmor.d/ooutline-client
创建包含以下内容的文件:将其替换
/path/to/Outline-Client.AppImage
为您的 appimage 的路径。保存文件后,运行
sudo systemctl reload apparmor.service
以重新加载所有 apparmor 配置文件。完成,享受您的应用程序图像...
注意:稍后将 appimage 移动到其他位置或更改其名称,需要使用正确的路径更新 apparmor 配置文件并重新加载 apparmor 配置文件。
apparmor 包永远不会提供 appimages 的配置文件,因为 appimages 存储在任意位置。我们必须创建自己的配置文件。我用几个 appimages 测试了这种方法,效果很好。