ec2 systemd 无法在启动时挂载 nfs 并且超时

ec2 systemd 无法在启动时挂载 nfs 并且超时

我正在运行最新版本的Red Hat Enterprise Linux Server release 7.0 (Maipo)

[root@ip-10-184-161-46 ~]# cat /etc/redhat-release 
Red Hat Enterprise Linux Server release 7.0 (Maipo)
[root@ip-10-184-161-46 ~]# rpm -q nfs-utils
nfs-utils-1.3.0-0.el7.x86_64
[root@ip-10-184-161-46 ~]# 

我的内部有以下条目/etc/fstab

[root@ip-10-184-161-46 ~]# grep -v ^# /etc/fstab | tail -2
UUID=0f89adb9-ac88-4be5-b6cc-52a05bbdb825 /                       xfs     defaults        1 1
ip-10-164-175-246.ec2.internal:/var/www/html    /var/www/html/  nfs4    defaults    0   2
[root@ip-10-184-161-46 ~]# 

rsyslog.service实例重新启动后,我看到for内部有以下内容systemd

Jul 19 22:10:03 ip-10-184-161-46 systemd: Job ip\x2d10\x2d164\x2d175\x2d246.ec2.internal:-var-www-html.device/start timed out.
Jul 19 22:10:03 ip-10-184-161-46 systemd: Timed out waiting for device ip\x2d10\x2d164\x2d175\x2d246.ec2.internal:-var-www-html.device.
Jul 19 22:10:03 ip-10-184-161-46 systemd: Dependency failed for File System Check on /ip-10-164-175-246.ec2.internal:/var/www/html.
Jul 19 22:10:03 ip-10-184-161-46 systemd: Dependency failed for /var/www/html.
Jul 19 22:10:03 ip-10-184-161-46 systemd: Dependency failed for Remote File Systems.
Jul 19 22:10:03 ip-10-184-161-46 systemd: 
Jul 19 22:10:03 ip-10-184-161-46 systemd: 
Jul 19 22:10:03 ip-10-184-161-46 systemd: 
Jul 19 22:10:03 ip-10-184-161-46 systemd: 

手动方式:

[root@ip-10-184-161-46 ~]# mount -a
[root@ip-10-184-161-46 ~]# echo $?
0
[root@ip-10-184-161-46 ~]# mount | grep '/var/www/html'
ip-10-164-175-246.ec2.internal:/var/www/html on /var/www/html type nfs4 (rw,relatime,vers=4.0,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=10.184.161.46,local_lock=none,addr=10.164.175.246)
[root@ip-10-184-161-46 ~]# 

nfs.service正在另一个实例上运行,正常运行时间表明它没有发生故障,所以我试图理解为什么systemd无法在启动时挂载它(Timed out)但尝试手动挂载它却不是一个问题。

知道为什么systemd无法在启动时安装它吗?

答案1

可能是它在启动 eth0 之前尝试挂载设备(因此没有网络连接)。您可以通过简单地附加_netdev到 fstab 的选项部分(即;defaults,_netdev)来修复此问题。

_netdev是一个特殊标志,它指示内核这是一个基于网络的设备,因此如果没有网络连接,则不会挂载。因此,在启动时,它将挂载所有没有此标志的设备,建立网络连接(这几乎总是在事后发生),然后启动_netdev设备。

答案2

... 根据 redhat 的8.3. NFS 客户端配置

更改线路来自:

ip-10-146-180-60.ec2.internal:/var/www/html /var/www/html/  nfs4     defaults,_netdev   0   2

到:

ip-10-146-180-60.ec2.internal:/var/www/html /var/www/html/  nfs defaults    0   0

解决了我的问题。

相关内容