我最近从 18.04 版本升级到 Ubuntu 20.04。从那时起,20.04 附带的snap
基于- 的浏览器无法访问我单独安装在系统上的分区中的任何项目。chromium
/opt
如果我去安装一个非snap
基础版本的麻烦chromium
,我在 20.04 下没有这个问题。
我不确定,但我认为访问运行 snap 程序的文件系统之外的文件系统的问题可能存在于所有snap
基于软件的软件中,而不仅仅是chromium
.
如何让chromium
所有其他snap
基于程序的程序查看我已安装的所有文件系统?
非常感谢。
PS:在我的系统上,/opt
通过以下行安装在/etc/fstab
...
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /opt ext4 defaults,auto 0 0
... x 代替实际有效的 UUID。
PPS:我系统上的所有非基于软件的软件在访问此分区snap
上的任何内容时都没有任何问题。/opt
PPPS:参考文章中建议的解决方案并不能解决我的问题,因为我必须改变我的系统(改变安装、路径、脚本等),只是为了让这个残废的,-snap
基于chromium
它像以前一样工作以前工作。我的目标是完全不改变我长期使用的系统设置,而是简单地安装一个chromium
可以以我多年来运行它的方式运行的版本。我现在发布的答案显示了我学会如何做到这一点的方式。发现那个方法去掉snap
-based chromium
,换成传统的版本后,我用了不超过10分钟就换掉chromium
了,让一切都像往常一样运行。
新信息:我仍然坚持我的观点(现在在下面以“我的原始答案(精简)”开头的部分中)Ubuntu 应该提供其软件包的两种版本
snap
和非snap
版本,而不是强迫我们所有人使用这些snap
版本。但是,我还发现了如何绕过现有snap
基于 - 的包的包含限制:snap
如果安装了基于标准 Ubuntu的chromium
软件包,我们可以像这样运行程序:这绕过了收容限制。
我的原始答案(删减):
(编辑删除)我在以下讨论中遵循了一个建议,该建议解释了如何禁用残缺的,
snap
基于chromium
- 并安装提供完整功能的版本,包括访问我想要访问的文件系统的能力: 如何删除 snap完全不丢失 Chromium 浏览器?我没有完全删除
snap
......我所做的只是执行用户建议的部分,称为“eitch”(大约 75% 下降到讨论的底部)。使用这个非snap
版本chromium
解决了我的问题。(编辑删除)
更新:另一个解决方案是 Ubuntu 为 Ubuntu 等软件提供
snap
基于和非snap
基于软件包的软件包chromium
,这样我们每个用户都可以单独决定是否需要给定软件包的完整传统功能,或者我们是否需要想要安装snap
使用包含的软件包的基于版本的版本,因此可能具有比旧版本更少的功能。(编辑删除)另一个更新:我现在已经在
flatpak
和下调查了这种行为appimage
,通过这些服务运行的程序似乎可以毫无问题地访问我系统上可通过命令行访问的所有分区和文件。这种chromium
明显残废的收容限制只适用于snap
。按照设计,快照是沙盒的。可以将快照连接到“接口”以允许它们执行特定操作。预计不会有任何接口允许快速访问系统文件夹。即使存在这样的接口,Chromium 的打包程序仍然需要启用将接口连接到 snap。
通常,您可以通过快照可以访问的文件夹下的某个文件夹对特定文件夹(“单独安装的文件系统”,一旦安装,只是一个文件夹结构)进行
mount --bind
快照访问。一些快照可以以“经典”模式安装。“经典模式”删除了所有沙盒,因此也删除了所有安全性。只有在已准备好 snap 的情况下,才能以经典模式安装。发布经典快照需要快照存储维护人员的手动批准。因此,许多快照无法在经典模式下安装。
但是,也许您应该重新考虑您的工作流程:您真的需要浏览器来访问
/opt
吗?通过以下方式启动 root shell
此后,为了能够在 Chromium中使用/opt下的数据,请执行以下操作
然后你应该可以在 Chromium 中通过/media/opt使用/opt 。
如果您只需要临时访问,请将上面的
echo
行和mount
上面的行替换为为了能够使用可能的子安装,请使用
rbind
代替bind
.您可以通过运行/mnt/r/使用所有已挂载的文件系统
(作为超级用户)如果目录/mnt/r存在。
有关如何卸载rbind挂载的说明,请参见此处。
请注意,挂载所有额外的文件系统可能存在安全风险。
有关可移动媒体接口的信息,请参见此处。
出于类似的原因,我放弃了基于 snap 的 Chromium,转而使用 Google Chrome(它以 .deb 包的形式提供)。我只能推荐。