$ HOME不是/ home / $ USER时如何使用Snap包?

尝试使用任何快照包,我遇到以下问题:

$ gimp cannot create user data directory: /local/home/user/snap/gimp/40: Read-only file system 

(Gimp只是一个例子)。

我在/local/home/$USER/我的$HOME /local/home/$USER/ (我无法改变这个!)并发现人们在快照商店论坛上有同样的问题: https : //forum.snapcraft.io/t/how- can-i-use-snap-when-i-dont-use-home-user / 3352和https://bugs.launchpad.net/snapcraft/+bug/1620771

在这个post中,人们说/home是快速编码的,他们建议使用bind-mount来解决这个问题。

我尝试了什么:

 $ sudo mount --bind $HOME /home/$USER 

我正确地列出了我的$HOME的内容

 $ ls /home/$USER 

我还在/etc/apparmor.d/tunables/home.d/my-homes添加了额外的主目录:

 $ cat /etc/apparmor.d/tunables/home.d/my-homes @{HOMEDIRS}+=/local/home/ 

/var/lib/snapd/apparmor/snap-confine/my-homes

 $ cat /var/lib/snapd/apparmor/snap-confine/my-homes mount options=(rw rbind) @{HOMEDIRS}/ -> /tmp/snap.rootfs_*/home/, 

使用bind-mount AND以及OR更改文件再次运行快照时,会发生与以前相同的错误。
我怎么解决这个问题?


 $ snap list gimp Name Version Rev Tracking Developer Notes gimp 2.10.0 40 stable snapcrafters - $ snap --version snap 2.32.9 snapd 2.32.9 series 16 ubuntu 16.04 kernel 4.4.0-127-generic 

snapd开发者在这里

对不起,这对你来说是一个问题,因为你没有提供你正在使用的snapd版本的详细信息(提示,运行snap version并在此粘贴)或者你的真实主目录的详细安排(遗憾的是也很重要)。

我自己并没有亲自试过这个,但你应该用这样的绑定装置做得很好:

sudo mount --bind /some/random/place/home/zyga /home/zyga

如果将其添加到/etc/fstab文件中,则可以使其永久化。 在此之后,您还必须将您的主目录更改为/home/zyga而不是原始位置。

如果失败,请snap install hello-world并添加以下命令的输出:

SNAP_CONFINE_DEBUG=yes hello-world dmesg | grep DENIED