Tom*_*ing 46 nfs permissions snap
我在运行 snap 应用程序时收到 Permission denied 错误,其中我的主目录安装在不允许 root-write 的 nfs 安装点上。这不是一个不寻常的配置,所以我认为这是一个错误。
错误信息:
cannot create user data directory: /home/tcumming/snap/vlc/4: Permission denied
Run Code Online (Sandbox Code Playgroud)
ubuntu 16 也有同样的问题。
根据要求提供更多信息:
使用 ubuntu,“Ubuntu 软件”我安装了一个 snap 应用程序(例如,vlc)。当我尝试运行它(从命令行)时,我收到了上面的“权限被拒绝”消息。
我刚刚在机器上重新安装了 Ubuntu,所以没有搞乱操作系统。我确实保留了我的 uid:gid 以便我可以安装我之前的 nfs 共享。
这不是挂载点或 nfs 的问题。出于安全原因,我们的挂载点不是 root 可写的。
我想问题是,我应该提交错误报告吗?我的下一步是什么?
est*_*rdo 20
在 Ubuntu 18.04 中也会发生同样的情况。
如果用户主目录不在/home
(或/
)挂载下,则无法使用snap
. 我的 HOMEDIR 在另一个本地 SSD 磁盘上,但由于它没有安装在 下/home
,因此 snap 安装的每个包都失败了。
由于 Canonical 正在转向支持 snap,您将不得不放弃这种好东西,例如其他文件系统上的 HOMEDIR,由 NFS 挂载等。
或许snap未来会更加灵活,但不是优先考虑:https : //forum.snapcraft.io/t/how-can-i-use-snap-when-i-dont-use-home-user/ 3352/6
现在的解决方法是从包中删除snap
和安装东西。*.tar.gz
*.deb
小智 11
我遇到了这个问题,因为我的主目录被符号链接/home/$USER
到另一个挂载点。我用/home 在其他地方时的建议修复了它,快照不起作用。
简而言之,您需要将非标准主目录添加到 apparmor 的HOMEDIRS
变量中:
$ sudo dpkg-reconfigure apparmor
Run Code Online (Sandbox Code Playgroud)
或者:在/etc/apparmor.d/tunables/home.d/
该文件中创建一个指向您的主目录挂载点的文件:
@{HOMEDIRS}+=/mnt/hdd/.home/
Run Code Online (Sandbox Code Playgroud)
然后,为了更好的衡量,您应该删除 apparmor 的缓存并重新启动:
$ sudo rm -f /etc/apparmor.d/cache/* /var/cache/apparmor/snap.*
$ sudo reboot
Run Code Online (Sandbox Code Playgroud)
小智 10
您可以从软件商店设置 Snap 应用程序的权限。
以下步骤在 Ubuntu 20.04 LTS 上测试:
此方法适用于已安装的硬盘。
参考:
小智 6
为了安全起见,Snap 应用程序默认限制在沙箱中。如果您希望快照应用程序能够读取/写入主目录中的数据,则应该以经典模式安装它们。尝试:
rclone install --classic vlc
Run Code Online (Sandbox Code Playgroud)
这应该对你有用。
如果应用程序沙箱是一个问题,那么您可能需要研究firejail。
归档时间: |
|
查看次数: |
47922 次 |
最近记录: |