至少要使用“经典”。我不想回避使用链接或绑定的问题...
答案1
作为用户,你对如何限制单个 snap 包的灵活性有限。你可以confinement: strict
在 devmode 中安装 snap 包,例如:
$ sudo snap install --devmode <snap name>
您还可以confinement: devmode
在“监狱”模式下安装 snap(即将其视为严格限制):
$ sudo snap install --jailmode <snap name>
但是,您无法做的是安装confinement: classic
除经典之外的任何其他版本,或者类似地将confinement: <not classic>
snap 安装为经典版本。
这种限制并不令人讨厌,这是因为confinement: classic
snap 的构建方式与confinement: <not classic>
snap 完全不同,而且在几乎所有情况下,在另一个模型下运行它们都会导致段错误或类似问题。这与confinement: classic
snap 不像其他类型的限制那样使用 snapcore
作为其 rootfs/执行环境有关,因此它会在完全不同的地方找到 libc 之类的东西。
一般情况下,我不建议利用在不同限制模型下安装 snap 的功能,除非你作为开发人员测试 snap。否则,你使用 snap 的方式可能完全没有经过 snap 作者的测试,而且可能不能正常工作。