在对 systemd 单元进行了一些研究后,我发现了两种不同的挂载单元:the.mount
和.automount
. 起初,对我来说,该automount
装置会自动安装一个似乎是合乎逻辑的mount
。但是,事实证明,当您启用安装单元时:
systemctl enable media-mydisk.mount
它将在启动时自动挂载。我对 systemd 有点陌生,但这已经困扰了我很长一段时间了。我还在最后发布了该单元的代码。
automount
所以,我的主要问题是:如果一个人可以启用一个mount
单元,为什么还需要s?
media-mydisk.mount
如果这有什么不同的话,这是我的:
[Unit]
Description=My disk
[Mount]
What=/dev/sdb1
Where=/media/mydisk
Type=ext4
Options=defaults
[Install]
WantedBy=multi-user.target
我在网上搜索过,但找不到使用 an.automount
和简单启用 a之间的任何比较.mount
中的“自动”部分
automount
不涉及引导过程:单元定义按需automount
安装的安装点,即仅在访问它们时。automount
单位是可选的;但是,当它们存在时,相应的mount
单位也必须存在。前者旨在为后者的现有实例添加功能。来自man systemd.mount
:并且,从
man systemd.automount
:单元的典型用例
automount
是挂载文件系统(例如在远程或可移动或加密媒体上),这些文件系统在启动过程中不需要并且可能会减慢速度,或者在启动时可能不可用,但您仍然喜欢由系统化。一个简单的、仅用于说明的示例。给定
mnt-foo.mount
单位(为简单起见,
foo
只是一个格式为 ext4 的常规文件),mnt-foo.automount
单位后者被激活后(或
enable
d,系统重新启动)您将能够检查
/home/user/foo
尚未安装的任何地方-mount
给出并且确实
/home/user/foo
只有在/mnt/foo
您访问安装点时才会安装: