我不知道如何在启动时挂载 NFS 共享。我尝试了几种不同的方法(如下所列),但没有任何效果。在这两种情况下,他们都需要network-online.target
,但他们似乎并没有在开始之前等待网络上线。是的,我确实可以与远程计算机通信,并且可以mount -a
在登录后运行并且共享将挂载。我完全不知所措。
尝试#1:我将以下内容放入/etc/fstab
:
10.0.10.10:/volume1/Media /mnt/media nfs x-systemd.automount,noauto,nofail,x-systemd.requires=network-online.target,suid,dev,exec,rw,sync,nouser 0 0
重启后结果:
root@ubuntu-svr:~# journalctl -b -u mnt-media.mount
-- Logs begin at Mon 2019-08-12 00:00:56 UTC, end at Fri 2019-09-20 22:05:16 UTC. --
Sep 20 21:36:29 ubuntu-svr systemd[1]: Mounting Mounts the '/mnt/media' directory...
Sep 20 21:36:29 ubuntu-svr mount[1528]: mount.nfs: Network is unreachable
Sep 20 21:36:29 ubuntu-svr systemd[1]: mnt-media.mount: Mount process exited, code=exited, status=32/n/a
Sep 20 21:36:29 ubuntu-svr systemd[1]: mnt-media.mount: Failed with result 'exit-code'.
Sep 20 21:36:29 ubuntu-svr systemd[1]: Failed to mount Mounts the '/mnt/media' directory.
尝试#2:我注释掉了 fstab 条目并创建了一个 systemd mnt-media.mount 文件,并使 systemd 单元能够在启动时启动。该文件的内容如下mnt-media.mount
:
root@ubuntu-svr:~# cat /etc/systemd/system/mnt-media.mount
[Unit]
Description=Mounts the '/mnt/media' directory
Wants=network-online.target
Requires=network-online.target
#After=network-online.target
[Mount]
Where=/mnt/media
What=10.0.10.10:/volume1/Media
Options=auto,x-systemd.automount,nofail,suid,dev,exec,rw,sync,nouser
Type=nfs
[Install]
WantedBy=multi-user.target
我通过启用它systemctl enable mnt-media.mount
。我重新启动,并检查它的状态:
root@ubuntu-svr:~# systemctl status mnt-media.mount
● mnt-media.mount - Mounts the '/mnt/media' directory
Loaded: loaded (/etc/systemd/system/mnt-media.mount; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Fri 2019-09-20 22:28:51 UTC; 1min 12s ago
Where: /mnt/media
What: 10.0.10.10:/volume1/Media
Sep 20 22:28:51 ubuntu-svr systemd[1]: Mounting Mounts the '/mnt/media' directory...
Sep 20 22:28:51 ubuntu-svr mount[1206]: mount.nfs: Network is unreachable
Sep 20 22:28:51 ubuntu-svr systemd[1]: mnt-media.mount: Mount process exited, code=exited, status=32/n/a
Sep 20 22:28:51 ubuntu-svr systemd[1]: mnt-media.mount: Failed with result 'exit-code'.
Sep 20 22:28:51 ubuntu-svr systemd[1]: Failed to mount Mounts the '/mnt/media' directory.
答案1
解决了:
事实证明我需要启用该systemd-networkd-wait-online.service
服务。现在我尝试的两次尝试(/etc/fstab 和 mnt-media.mount)都按预期工作。
对于遇到此问题的其他人,根据您是否使用systemd-networkd
或NetworkManager
,您需要确保系统上启用systemd-networkd-wait-online.service
或。NetworkManager-wait-online.service
否则,即使您的安装明确需要网络,您的系统也不会等待网络启动。
我通过这个链接找到了这个答案:NFS/故障排除 - 网络无法访问。
答案2
如果上述内容对您没有帮助,即我(服务已启用并运行 NetMan)
我添加了x-systemd.after=网络在线.target到系统表进入并重新启动,它就工作了。不确定是否_netdev有帮助,但它也是我条目的一部分。