Ubuntu 20.04 下的 Snap“严格”应用程序无法访问 /home/user/ 下挂载的文件夹?

Ubuntu 20.04 下的 Snap“严格”应用程序无法访问 /home/user/ 下挂载的文件夹?

在这里寻找一些见解:

我无法从不强制执行 -classic 选项的快照应用程序(例如 VLC 和 chromium)访问 /home/user/ 下的已挂载文件夹。我在几个地方读到,“严格”快照应用程序可能无法访问挂载在 /media 或 /home/user/ 之外的卷,但没有任何地方提到挂载在 /home/user/ 内的卷也可能面临权限问题。

这些卷是通过我的根 crontab (@reboot) 中的挂载指令挂载的 NTFS 卷。例如,Slack(在我的设置中默认安装在 snap --classic 下)可以正常访问它们。

该设置是双启动 Win10/Ubuntu 20.04。

知道可能是什么问题吗?

答案1

由 snap 软件包配置权限并访问主文件夹或已安装的设备。如果您是 snap 软件包的创建者,您可以自己启用权限,或者您需要在 Snapcraft 论坛上明确请求它为您启用您正在创建的特定软件包的权限。

这些权限称为interfaces,您可以在以下位置找到完整列表https://snapcraft.io/docs/supported-interfaces列表中的自动连接,这意味着打包者可以自行配置它们,而无需请求许可。但那些没有自动连接,他们必须访问https://forum.snapcraft.io/并发起一个新线程请求为他们的包启用该功能。

您要询问的两个接口是personal-filesremovable-media。这两个都不是自动连接

这里有接口对于 LibreOffice snap 包:

$ snap interfaces libreoffice
Interface                 Plug                                Slot                             Notes
audio-playback            libreoffice:audio-playback          :audio-playback                  -
bluez                     libreoffice:bluez                   -                                -
content[gnome-3-28-1804]  libreoffice:gnome-3-28-1804         gnome-3-28-1804:gnome-3-28-1804  -
content[gtk-3-themes]     libreoffice:gtk-3-themes            gtk-common-themes:gtk-3-themes   -
content[icon-themes]      libreoffice:icon-themes             gtk-common-themes:icon-themes    -
content[sound-themes]     libreoffice:sound-themes            gtk-common-themes:sound-themes   -
cups-control              libreoffice:cups-control            :cups-control                    -
desktop                   libreoffice:desktop                 :desktop                         -
desktop-legacy            libreoffice:desktop-legacy          :desktop-legacy                  -
gsettings                 libreoffice:gsettings               :gsettings                       -
home                      libreoffice:home                    :home                            -
network                   libreoffice:network                 :network                         -
network-bind              libreoffice:network-bind            :network-bind                    -
opengl                    libreoffice:opengl                  :opengl                          -
pulseaudio                libreoffice:pulseaudio              :pulseaudio                      -
removable-media           libreoffice:removable-media         :removable-media                 -
screen-inhibit-control    libreoffice:screen-inhibit-control  :screen-inhibit-control          -
unity7                    libreoffice:unity7                  :unity7                          -
wayland                   libreoffice:wayland                 :wayland                         -
x11                       libreoffice:x11                     :x11                             -

removable-media在列表中,并且他们在这个帖子中请求许可

因此,如果 snap 包无法打开可移动媒体,那么就是打包者没有请求许可的问题removable-media,或者他们可能已经请求过但被拒绝了。

话虽如此,您可以使用--devmode参数绕过 snap 包安全保护。这样您就可以获得完全访问权限,就像您安装了 deb 包一样。请注意,您需要确保 snap 包没有问题,因为任何人都可以在 Snap Store 上创建 snap 包,并且您将禁用此包的所有安全保护。

具体操作如下:

sudo snap install somesnappackage --devmode

相关内容