2012-10-22 3 views
12

जब मैं iTerm खोलते हैं, तो मैं इस संदेश को हो रही है:टर्मिनल और iTerm से अजीब व्यवहार हो रही

अंतिम लॉगइन: सोमवार 22 अक्टूबर 12:20:25 पर ttys002
-bash: कांटा: संसाधन अस्थायी रूप से अनुपलब्ध
-bash-3,2 $

और जब मैं टर्मिनल खोलते हैं, तो मैं हो रही है:

अंतिम लॉगिन: सोम अक्टू 22 12:25:47 पर ttys002
-bash: कांटा: संसाधन अस्थायी रूप से अनुपलब्ध
विलियम्स मैकबुक प्रो: ~ विलियम $

और जब भी मैं एक में डाल करने की कोशिश

-bash: कांटा: संसाधन अस्थायी रूप से अनुपलब्ध

तो मैं मूल रूप से कुछ नहीं कर सकते आदेश, एलएस या सीडी की तरह मैं इस त्रुटि संदेश मिलता है। मैंने त्रुटि संदेश googling करने की कोशिश की है, लेकिन कहीं भी नहीं मिल रहा है। मैं माउंटेन शेर के साथ एक मैक पर हूं अगर यह मदद करता है। धन्यवाद।

संपादित करें:

मैं

प्रक्रिया की स्थिति प्राप्त करने के लिए और मैं टर्मिनल से एक प्रतिक्रिया के रूप में इस मिल गया "ps" भाग गया:

विलियम्स मैकबुक प्रो: ~ विलियम $ ps
पीआईडी ​​TTY समय सीएमडी
203 ttys000 0: 00.08 -bash
254 ttys001 0: ००.०३ बैश /Users/william/.rvm/scripts/wrapper माणिक 1.9.3-p2
553 ttys001 0: 00.03 bash /Users/william/.rvm/scripts/wrapper ruby-1.9.3-p2
785 ttys001 0: 00.03 bash /Users/william/.rvm/scripts/wrapper ruby-1.9.3 -P2
814 ttys001 0: 00.48 -bash
1019 ttys001 0: ००.०३ बैश /Users/william/.rvm/scripts/wrapper माणिक 1.9.3-p2

और संदेश

bash /Users/william/.rvm/scripts/wrapper ruby-1.9.3-p2

टर्मिनल में कुछ सौ बार सूचीबद्ध करता रहता है (यह सभी कारणों को पोस्ट नहीं कर सकता है क्योंकि यह शायद इस बॉक्स में फिट नहीं होगा और यह केवल वही रहता है), इसलिए मुझे लगता है कि वहां कुछ स्केची चल रहा है फ़ाइल। क्या कोई जानता है कि इसे कैसे ठीक करें?

+0

सुझाव है कि आप उस रूबी स्क्रिप्ट को देखें। अगर आपको समस्या नहीं मिल रही है तो शायद पुनः पोस्ट करें - यह शायद खुद को बुला रहा है। – cdarke

+0

योसैमेट और ऊपर के लिए अपडेटेड रिज़ॉल्यूशन https://superuser.com/a/838630 – jcasner

उत्तर

6

bash - और अन्य सभी गोले भी - यूनिक्स सिस्टम पर fork सिस्टम कॉल का उपयोग करें ताकि वास्तव में उस प्रक्रिया को बनाने के लिए जिसे आप खोल से लॉन्च करना चाहते हैं। इस मामले में, bash आपको बताता है कि सिस्टम कॉल Resource temporarily unavailable के साथ समाप्त हुआ, जो errno 11 के मान का अनुवाद करता है, जो EAGAIN के बराबर है।

  • यह पर्याप्त स्मृति आवंटित नहीं कर सकता माता पिता के पृष्ठ सारणी कॉपी और बच्चे के लिए एक कार्य संरचना आवंटित करने के लिए:

    fork के लिए मैन्युअल पृष्ठ यह EAGAIN को errno निर्धारित कर सकते हैं कि जब कहते हैं।

  • नई प्रक्रिया बनाना संभव नहीं था क्योंकि कॉलर की RLIMIT_NPROC संसाधन सीमा का सामना करना पड़ा था। इस सीमा को पार करने के लिए, प्रक्रिया में CAP_SYS_ADMIN या CAP_SYS_RESOURCE क्षमता होनी चाहिए।

इस मामले में, मुझे लगता है कि पहला कारण वास्तव में यथार्थवादी नहीं लगता है, जब तक कि आप वास्तव में स्मृति से बाहर न हों, तो मुझे लगता है कि आपने अभी तक चलने वाली प्रक्रियाओं की संख्या के लिए सीमा को मारा होगा उपयोगकर्ता।

+0

पर पाया जा सकता है यदि मैंने किसी भी मदद की है तो मैंने मूल पोस्ट संपादित कर लिया है। –

+0

धन्यवाद। मैंने आज कुछ सीखा! –

+0

धन्यवाद - सहायक प्रतिक्रिया! एक प्रस्ताव से लिंक करने के लिए भी अच्छा हो सकता है, जैसे कि https://superuser.com/a/838630 – jcasner

3

प्रक्रियाओं की संख्या पर उच्च सीमा निर्धारित करना देखें।

http://blog.ghostinthemachines.com/2010/01/19/mac-os-x-fork-resource-temporarily-unavailable/

+1

असल में, यह पोस्ट बहुत पुराना है। कम से कम ओएसएक्स 10.10 launchd.conf में अब उपयोग नहीं किया जाता है। तो आपको sysctl.conf में proc सीमा निर्धारित करना होगा और इसके अतिरिक्त प्रोफाइल (ulimit -u) में सेट करना होगा। प्रक्रियाओं की निगरानी करने के लिए पीएस कुल्हाड़ी | wc -l – senz

0

हल करने के लिए Yosemite और मैक ओएस के नए संस्करण पर, https://superuser.com/a/838630 का उपयोग करें। मैं plist फ़ाइलों को अद्यतन करके और रीबूट करने के द्वारा हल करने में सक्षम था - ulimit आदेश अनावश्यक थे।

संबंधित मुद्दे