插入自动安装的驱动器时如何告诉 systemd 创建绑定安装?

插入自动安装的驱动器时如何告诉 systemd 创建绑定安装?

我为我的外部 USB 驱动器启用了以下安装和自动安装单元。

安装单位:

[Unit]
Description=Time Machine Drive Mount Service

[Mount]
What=/dev/disk/by-uuid/some-uuid
Where=/media/timemachine
Type=hfsplus

[Install]
WantedBy=multi-user.target

自动安装单元:

[Unit]
Description=Time Machine Drive Automount Service

[Automount]
Where=/media/timemachine

[Install]
WantedBy=multi-user.target

每次插入驱动器时,如何告诉 systemd 将挂载点绑定到另一个目录?

答案1

上游项目 systemd 的这个问题似乎表明您尝试做的事情是不可能的,并且他们不会添加它,主要是由于内核工作方式的限制。

摘抄

请注意,创建绑定挂载后,与用于创建它们的原始挂载相比,它们是同一文件系统的完全独立的入口点。这意味着,在创建 /opt/oh 作为绑定挂载后,/mnt/sda 位于自动挂载点上的事实与其生命周期完全无关:新的绑定挂载直接指向有效文件系统,它们会失去任何自动挂载魔力。这是内核设计的选择,systemd 对此无能为力。

抱歉,systemd 不能做你想做的事,因为内核根本不那样工作!

对不起!

无论如何,您还有其他方法,其中一种方法在 U&L 问答中进行了描述,标题为:按需将 USB 驱动器绑定到主目录

相关内容