Amazon-Ec2
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
不能在啟動時安裝它?
…每個紅帽的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
設備。