SUSE लाइनेक्स एंटरप्राइज सर्वर 10.4 पर खुली फाइलों के लिए स्थायी रूप से संशोधन कैसे करें?


9
SERVER:/etc # ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
file size               (blocks, -f) unlimited
pending signals                 (-i) 96069
max locked memory       (kbytes, -l) 32
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 96069
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
SERVER:/etc # 

मैं मूल उपयोगकर्ता की सीमा 1024 से कुछ और, स्थायी रूप से कैसे निर्धारित कर सकता हूं? मैं विश्व स्तर पर अल्टीमेट कैसे सेट कर सकता हूं? क्या परिवर्तन पल में प्रभावी होंगे?

ps: मैं इसके लिए पहले से ही googled था, लेकिन वह फ़ाइल नहीं ढूँढ सका जहाँ मैं इसे स्थायी रूप से सेट कर सकूँ:

SERVER:/etc # grep -RiI ulimit * 2>/dev/null | egrep -v ":#|#ulimit"
init.d/boot.multipath:      ulimit -n $MAX_OPEN_FDS
init.d/multipathd:      ulimit -n $MAX_OPEN_FDS
rc.d/boot.multipath:        ulimit -n $MAX_OPEN_FDS
rc.d/multipathd:        ulimit -n $MAX_OPEN_FDS

तथा..:

SERVER:/etc # grep -RiI 'MAX_OPEN_FDS' * 2>/dev/null
init.d/boot.multipath:MAX_OPEN_FDS=4096
init.d/boot.multipath:  if [ -n "$MAX_OPEN_FDS" ] ; then
init.d/boot.multipath:      ulimit -n $MAX_OPEN_FDS
init.d/multipathd:MAX_OPEN_FDS=4096
init.d/multipathd:  if [ -n "$MAX_OPEN_FDS" ] ; then
init.d/multipathd:      ulimit -n $MAX_OPEN_FDS
rc.d/boot.multipath:MAX_OPEN_FDS=4096
rc.d/boot.multipath:    if [ -n "$MAX_OPEN_FDS" ] ; then
rc.d/boot.multipath:        ulimit -n $MAX_OPEN_FDS
rc.d/multipathd:MAX_OPEN_FDS=4096
rc.d/multipathd:    if [ -n "$MAX_OPEN_FDS" ] ; then
rc.d/multipathd:        ulimit -n $MAX_OPEN_FDS
SERVER:/etc # 

जवाबों:


9

Pam_limits (8) मॉड्यूल का उपयोग करें और निम्न दो पंक्तियों को जोड़ें /etc/security/limits.conf:

root hard nofile 8192
root soft nofile 8192

यह अगले लॉगिन पर रूट के लिए RLIMIT_NOFILE संसाधन सीमा (नरम और कठोर दोनों) को बढ़ाकर 8192 कर देगा।


1
मैंने इसे संशोधित किया है, लेकिन उलिमित-ए को रूट के साथ देखने पर इसका कोई असर नहीं दिखता है, फिर से लॉगिन के बाद भी, रिबूट के बिना इस बदलाव को लिमिट में कैसे लागू करें? : डी
गैस्को पेटर

1
ulimit -n 8192वर्तमान शेल और इसकी सभी चाइल्ड प्रक्रियाओं के लिए तुरंत सीमा निर्धारित करेगा।
पेट्र उज़ेल

मैं स्वीकार कर रहा हूँ .. लेकिन afaik मशीन को रिबूट की आवश्यकता होगी :) - तब तक
.bash_profile

फ़ाइल /etc/security/limits.confसच्चाई का केवल आधा हिस्सा है: फ़ाइल को पढ़ा जाता है pam_limits.so, जिसे बदले में कॉन्फ़िगर करना होगा। मैनुअल पेज कहता है /etc/pam.d/loginकि एक पंक्ति होनी चाहिए session required pam_limits.so
यू विंडल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.