在 redhat 7.2 上自动挂载 nfs 不起作用

在 redhat 7.2 上自动挂载 nfs 不起作用

我的 Linux 客户端(redhat 7.2)上有以下 nfd 共享文件夹

master1:/nfs             41932800 6601728  35331072  16% /nfsshare

我们决定使用 auto fs 服务,以防该共享文件夹被卸载

我们创建了以下服务(根据链接 -https://michlstechblog.info/blog/systemd-automount-nfs-export/

ls -ltr  auto-mnt.service
-rw-r--r-- 1 root root 212 May 10 12:38 auto-mnt.service

会议

 more  auto-mnt.service
[Unit]
  Description=nfs mount script
  Requires=network-online.target
  After=network-online.service

[Mount]
  What=master1:/nfs
  Where=/nfsshare
  Options=
  Type=nfs

[Install]
  WantedBy=multi-user.target

systemctl daemon-reload

 systemctl start auto-mnt.service
Failed to start auto-mnt.service: Unit auto-mnt.service failed to load: Invalid argument. See system logs and 'systemctl status auto-mnt.service' for details.
[root@ system]# systemctl status auto-mnt.service
● auto-mnt.service - nfs mount script
   Loaded: error (Reason: Invalid argument)
   Active: inactive (dead)

来自 fstab

master1:/nfs  /nfsshare nfs defaults,noauto,x-systemd.automount,group,noauto,x-systemd.idle-timeout=1min 0 0

我们不明白为什么服务会抱怨 -

[/etc/systemd/system/auto-mnt.service:6] Unknown section 'Mount'. Ignoring.
auto-mnt.service lacks both ExecStart= and ExecStop= setting. Refusing.

Unknown section 'Mount'. Ignoring

服务语法有什么问题?

答案1

如果您要创建名为 /nfsshare 的挂载点,则 systemd 单元应称为“nfsshare.mount”。它不是一个服务单元,因此将其称为 .service 是无意义的,这就是您收到该错误的原因。

另外,如果您创建安装单元,则不再需要(并且可能会导致问题)在 /etc/fstab 中拥有条目。

答案2

此外杰斯比林斯的答案是您的文件应该具有.mount扩展名,您应该考虑在安装目标之后命名您的文件,这里是更详细的。

例如如果你的文件是这样的

...
Where=/mnt/data
...

文件名需要是mnt-data.mount

相关内容