अधिकतम खुली फ़ाइलों को बढ़ाने के अन्य तरीके?


1

मेरे पास एक आवेदन है जो मुझे निम्नलिखित त्रुटि देता है।

tail: inotify cannot be used, reverting to polling: Too many open files

मैंने पहले ही उन सभी सलाहों का पालन कर लिया है जो मुझे वेब खोजों पर मिल रही हैं, और उन सभी तरीकों से ओपन फाइल डिस्क्रिप्टर की संख्या को बदल दिया है जो मुझे पता है कि कैसे। मैंने सर्वर को रिबूट भी किया है। क्या अब भी अधिक फ़ाइलों को खोलने से मेरी प्रक्रिया अवरुद्ध हो सकती है?

कुछ उपयोगी डेटा:

# lsof | wc -l
8347
$ lsof -u <username> | wc -l
7533
$ cat /proc/sys/fs/file-max
98349
$ cat /etc/security/limits.conf
...
<username>       soft    nofile      32768
<username>       hard    nofile      65536
...
$ ulimit -Hn
65536
$ ulimit -Sn
32768

जवाबों:


2

अपना टर्मिनल खोलें और जैसा लिखें

sysctl fs.inotify.max_user_watches

वर्तमान सीमा की जाँच करने के लिए। यदि आप इसे संशोधित करना चाहते हैं तो टर्मिनल में रूट के रूप में टाइप करें

vim /etc/sysctl.conf

फिर अंत में इस निम्नलिखित पंक्ति को जोड़ें

fs.inotify.max_user_watches = XXXXXX

XXXXXX में अपना वांछित मान रखें।

मुझे बताएं कि क्या आप अभी भी किसी भी मुद्दे का सामना कर रहे हैं।


दिशा का शुक्रिया। ऐसा लगता है कि "sysctl" आखिरी जगह थी जिसे मुझे फ़ाइल डिस्क्रिप्टर (विशेष रूप से इनोटिफ़ाइड वाले) के लिए भत्ता बढ़ाने के लिए जाने की आवश्यकता थी। हालाँकि मुझे अपने मुद्दे को हल करने के लिए एक और सेटिंग बढ़ाने की ज़रूरत थी fs.inotify.max_user_instances, जिसे मैंने 512 पर सेट कर दिया था।
sffc

1
इस मुद्दे के साथ अन्य लोगों के लिए एक परिशिष्ट: आपको /etc/sysctl.conf केsudo sysctl -p अनुसार सेटिंग्स को ताज़ा करने के लिए चलाने की आवश्यकता है , और उस फ़ाइल में जोड़ने / बदलने के लिए दो सेटिंग्स हैं और , दोनों के तहत । max_user_watchesmax_user_instancesfs.inotify
sffc
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.