RedHat EL AS3U3启动时mount NFS failed解决方法

发表于:2007-07-04来源:作者:点击数: 标签:
在用Dell Precision 470组建Beowulf Cluster过程中,各计算节点利用NFS mount控制节点的/home目录(OS RHEL AS3U3)。但在启动时各计算节点Mount控制节点的/home目录时失败,但启动后利用mount -a却可以挂载控制节点的/home目录。 经分析可能原因为Dell Precis
     在用Dell Precision 470组建Beowulf Cluster过程中,各计算节点利用NFS mount控制节点的/home目录(OS RHEL AS3U3)。但在启动时各计算节点Mount控制节点的/home目录时失败,但启动后利用mount -a却可以挂载控制节点的/home目录。
     经分析可能原因为Dell Precision 470的网卡Intel Pro 1000进行初始化后需要一定延迟时间才能正常工作,并于RedHat的maillist上找到一个解决方法。通过修改初始化脚本/etc/init.d.netfs,先通过ping命令确保能成功ping通控制节点,然后再mount /home目录。
     脚本如下:(其中带+号的行为需要添加到netfs脚本里的代码)

--- netfs.old2003-12-10 11:26:25.000000000 -0800
+++ netfs.new2003-12-10 11:25:49.000000000 -0800
@@ -36,6 +36,23 @@
# See how we were called.
case "" in
start)
+# First, try to check for connectivity to that network:
+ for mynfsserver in `grep -v '^#' /etc/fstab | awk '{if ( ~ /^nfs$/ && !~ /noauto/) print }' | cut -d: -f1`
+ do
+ echo -n "Checking NFS server: $mynfsserver"
+ i=1
+ until ping -q -c 2 -w 5 $mynfsserver > /dev/null || [ $i -ge 60 ]
+ do
+ sleep 0.1
+ i=$((i+1))
+ echo -n .
+ done
+
+ ping -q -c 1 -w 3 $mynfsserver > /dev/null || echo_warning
+ ping -q -c 1 -w 3 $mynfsserver > /dev/null && echo_suclearcase/" target="_blank" >ccess
+ echo
+ done
+
[ -n "$NFSFSTAB" ] &&
{
[ ! -f /var/lock/subsys/portmap ] && service portmap start

原文转自:http://www.ltesting.net