Amazon-Ec2

ec2 systemd 無法在啟動時掛載 nfs 並且超時

  • September 19, 2014

我正在執行最新版本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不能在啟動時安裝它?

…每個紅帽的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

解決了我的問題。

可能是它在啟動 eth0 之前嘗試安裝設備(因此沒有網路連接)。您可以通過簡單地附加_netdev到 fstab 的選項部分(即;defaults,_netdev)來解決此問題。

_netdev是一個特殊標誌,它指示核心這是一個基於網路的設備,因此不會在沒有網路連接的情況下掛載。因此,在啟動時,它將掛載所有沒有此標誌的設備,啟動網路連接(這幾乎總是在事後發生),然後啟動_netdev設備。

引用自:https://serverfault.com/questions/614363