我最近发现(除其他外)网络共享可以在访问时自动安装。在 Ubuntu 中,有两种选择:使用 autofs 或 systemd 的自动挂载功能。
也许有人可以告诉我这两个选项之间有什么区别(除了不同的配置)。 Autofs 似乎更灵活,因为可以为自动挂载位置配置脚本。使用 systemd 自动挂载也可以吗?
2017 年 7 月 25 日更新:
只是为每个遇到这个问题的人提供一个简短的更新。
我选择了 systemd 自动挂载选项,因为它更方便、更容易配置,同时提供几乎相同的功能。
如果存在 fstab 条目noauto
并x-systemd.automount
重新加载 systemd 守护进程 ( systemctrl daemon-reload
) 将在下面生成一个自动挂载 systemd 单元/run/systemd/generator/
(至少这是在 ubuntu 16.04 下生成它的路径)。该单元将以 fstab 条目的挂载点命名。也就是说,如果您创建一个自动挂载点,/media/network/someserver/share
将会有一个 systemd 自动挂载单元media-network-someserver-share.automount
。然后可以使用(重新)启动此自动安装单元来激活安装点systemctl restart media-network-someserver-share.automount
。
你就完成了。
答案1
我想你已经基本上回答了你自己的问题。
Systemd 在“及时”管理器中考虑大多数事情,因此添加自动挂载是一个明显的扩展。配置使用通用样式,但不是非常灵活。
Autofs 是我们用来执行此操作的旧方法。它很灵活,配置有点复杂/奇怪,并且默认情况下可能没有安装。
除非您的需求很复杂,否则您可能需要 systemd。简单的自动挂载设置指南如下: http://blog.tomecek.net/post/automount-with-systemd/
答案2
对我来说主要的区别是 autofs 具有正确的自动脚本,将动态列出可用的共享。因此,您不需要预先定义和硬编码哪些机器/共享应该可用。
通过 systemd 的自动挂载,只有您预先配置的共享才会可见。这是优点还是缺点取决于您的环境、政策、使用模式等。