मैं एक प्रक्रिया मैं केवल कई परीक्षण पूरा करता है, तो सफलतापूर्वक आरंभ करना चाहते हैं पता लगाने के लिए एक अच्छा तरीका है।वहाँ एक बासी एनएफएस माउंट
एक परीक्षण की आवश्यकता है कि मेरे एनएफएस माउंट के सभी जीवित है और अच्छी तरह से कर रहे हैं।
मैं जानवर बल दृष्टिकोण की तुलना में बेहतर कर सकते हैं:
mount | sed -n "s/^.* on \(.*\) type nfs .*$/\1/p" |
while read mount_point ; do
timeout 10 ls $mount_point >& /dev/null || echo "stale $mount_point" ;
done
यहाँ timeout
एक उपयोगिता है कि पृष्ठभूमि में आदेश चला जाएगा, और एक निश्चित समय के बाद यह मार देंगे, अगर कोई SIGCHLD
समय सीमा से पहले पकड़ा गया था, सफलता वापस लौटा/स्पष्ट तरीके से असफल रहा।
अंग्रेजी में: mount
के उत्पादन में पार्स, चेक (एक टाइमआउट से घिरा) हर एनएफएस माउंट बिंदु। वैकल्पिक रूप से (ऊपर दिए गए कोड में नहीं) पहले स्टेल माउंट पर तोड़ना।
से 'आदमी 3 errno': ESTALE सुरक्षित । क्या इसका मतलब है कि मुझे एक और समाधान की तलाश करनी चाहिए? –
मुझे लगता है कि यह आपके कर्नेल पर निर्भर करता है। – Teddy
हां, आप सही हैं: मेरे distro 'man 3 errno' के बाद के संस्करण में कहते हैं: "' ESTALE' स्टाइल फ़ाइल हैंडल (POSIX.1)) यह त्रुटि NFS और अन्य फ़ाइल सिस्टम के लिए हो सकती है "। और हालांकि मैं अपने प्रश्न में वर्णित क्रूर बल दृष्टिकोण के साथ गया, मैं इस जवाब को स्वीकार करूंगा। –