我想要一个基于文件的文件系统(~/Archives/inventory.locker)在用户登录时安装并在注销时卸载(~/Documents/Inventory)。
pam_mount
似乎提供了我想要的功能,但它有不相容于pam_systemd
。
我尝试编写一个基于用户的systemd.mount
单元,但失败了:
mount: only root can do that
即使我定义了“用户”安装选项并且可以手动以用户身份成功安装。
该systemd
方法似乎很理想,因为它不需要其他依赖项,并且也是每个用户进程而不是每个登录会话。
我也愿意接受替代解决方案。
答案1
这里迟到了。这可能有点违反直觉,但我使用服务(而不是挂载)systemd 用户单元,它对我有用。我必须 在条目中添加user
和选项。noauto
/etc/fstab
cat ~/.config/systemd/user/[email protected]
[Unit]
Requires=home-me.mount
After=home-me.mount
[Service]
ExecStart=/bin/mount %h/%I
ExecStop=/bin/umount %h/%I
RemainAfterExit=yes
[Install]
WantedBy=default.target
您应该使用以下命令启用单元实例:
systemctl --user enable mount@some-directory
有关文件名中的帮助@
,可以阅读有关systemd 实例化单元。