मैं अचानक एक समस्या में चल रहा हूं; मेरे सभी एप्लिकेशन और सर्वर ठीक चल रहे थे और अचानक मुझे खुली फ़ाइलों की संख्या दिखाई दे रही है।
मैं इसे इस कमांड से जाँच रहा हूँ:
cat /proc/sys/fs/file-nr
जब मैं इसे दिखाता 44544 0 128000
हूं, तो 44544 खुली फाइलों की संख्या है।
लेकिन जब मैं इस कमांड के साथ जांच करता हूं - lsof | wc -l
यह दिखाता है - 28384।
तो कौन सा सही है?
मेरी अधिकतम खुली फ़ाइलों की सीमा 65535 है
ulimit -a
open files (-n) 65535
मैं शीर्ष 5 प्रक्रियाओं को जानना चाहता हूं जो अधिक खुली फ़ाइलों का उपयोग कर रही हैं। मैं इसे प्राप्त कर सकता हूं, lsof
लेकिन यहां दिखाई गई गिनती मेरे द्वारा बताई गई अन्य कमांड से बहुत अलग है।
क्या मुझे इस कमांड द्वारा गिनाई गई प्रक्रियाओं का विवरण मिल सकता है cat /proc/sys/fs/file-nr
?
नीचे दिए गए लिंक के अनुसार यह कहता है कि हम नहीं कर सकते, कैसे खुला फ़ाइल डिस्क्रिप्टर प्रदर्शित करें , लेकिन lsof कमांड का उपयोग नहीं
क्या मेरे आसपास कोई काम है? मुझे यह खोजने की आवश्यकता है कि अचानक से अधिक खुली फ़ाइलों का उपयोग करके कौन सी प्रक्रिया शुरू हुई।
अद्यतन समस्या के लिए क्षमा लोग। मुझे वह गलती मिली जो मैं कर रहा था मैं lsof की जाँच नहीं कर रहा था | wc -l रूट से। यही कारण है कि मैं एक बड़ा अंतर देख रहा था।
अभी भी फ़ाइल के आउटपुट और -sr के बीच अंतर है wc -l (रूट से)। lsof काउंट फाइल -nr काउंट से अधिक है। इसका कारण यह है, फ़ाइल -nr कुछ निर्देशिकाओं (जो कि lsof द्वारा फाइल के रूप में मानी जाती हैं) को अनदेखा करती है, मुझे यह कारण Google पर एक शोध से पता चला। वैसे भी! सभी मदद के लिए धन्यवाद दोस्तों!
lsof | wc -l
वास्तव में नकारात्मक संख्या दिखाई दे रही है?