मेरे लॉन्चर कॉन्फ़िगर के साथ क्या गलत है?


15

मैं लॉगिन पर SickBeard को ऑटो चलाने की कोशिश कर रहा हूं

python /Applications/Sick-Beard/Sickbeard.py

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC -//Apple Computer//DTD PLIST 1.0//EN http://www.apple.com/DTDs/PropertyList-1.0.dtd >
<plist version="1.0">
<dict>
  <key>Label</key>
  <string>com.sickbeard.sickbeard</string>
  <key>ProgramArguments</key>
  <array>
       <string>/usr/bin/python</string>
       <string>/Applications/Sick-Beard/SickBeard.py</string>
       <string>-q</string>
       <string>-d</string>
  </array>
  <key>RunAtLoad</key>
  <true/>
</dict>
</plist>

जब मैं चलता हूं तो launchctl com.sickbeard.sickbeard.plistयह मुझे संदेश देता है:

प्रक्षेपित लोड com.sickbeard.sickbeard.plist launchctl: के लिए कोई वादक नहीं लौटाया गया: com.sickbeard.sickbeard.plist प्रक्षेपण: कोई भी वादक वापस नहीं किया गया था: com.sickbeard.sickbeard.plist कुछ भी लोड करने के लिए नहीं मिला।


मुझे लगता है कि आप अपने कमांड लाइन में "लॉंच लोड कॉम। एसकबियरड.सिक्कबर्ड.प्लिस्ट" का मतलब है ? अन्यथा आपको एक पूरी तरह से अलग त्रुटि
मिलेगी

जवाबों:


37

मैं अजगर लिपि के पथों को मान रहा हूं और इसके पैरामीटर मान्य हैं, अन्यथा आप संभवतः कंसोल में त्रुटियों को देख रहे होंगे।

पिछली बार मैंने उस त्रुटि को देखा था क्योंकि प्लेस्ट में अतिरिक्त वर्ण थे, जैसे अतिरिक्त स्थान, वाक्यविन्यास त्रुटियां और इसलिए इसे लोड करने में विफल होना। यदि आप plutil -lintअपनी पलस्तर पर चलते हैं , तो यह आपके लिए वाक्यविन्यास की जाँच करेगा और जिस लाइन पर त्रुटि हुई थी, उसे भी वापस रिपोर्ट करेगा।

plutil -lint com.sickbeard.sickbeard.plist

कि मदद नहीं करता है, तो (OSX) कैसे करने के लिए प्रारंभ SickBeard लॉग इन पर या OSX पर बूट sickbeard मंचों पर धागा तुम्हारा करने के लिए एक अलग plist (से चल sickbeard है /usr/localके रूप में करने का विरोध किया /Applicationsऔर - तो यह एक अनुमतियाँ बात हो सकती) यह भी प्रतीत होता है के साथ कुछ लोगों एक ही समस्या आप के रूप में


2
आपके सहयोग के लिए धन्यवाद। ऐसा लगता है कि नकल और चिपकाने से एक अतिरिक्त चरित्र आया जो छिपा हुआ था। मैंने नैनो के साथ पूरे एक्सएमएल को वापस ले लिया है और यह ठीक काम किया है।
जोआओ कोस्टा

2
धन्यवाद, plutil -lintपहले कभी नहीं पता था । बेहद सुविधाजनक!
लूटमारियों

बस यह पोस्टिंग मिल गई है, लेकिन कंसोल आउटपुट की जाँच करने से डीबगिंग के साथ-साथ बहुत से भी मदद मिलती है।
विंग तांग वोंग

2

जैसा कि मैंने कठिन तरीका खोजा है, आपको फ़ाइल sudoके पूर्ण पथ .plistको निम्नानुसार (अपने मामले में) का उपयोग करके कमांड को निष्पादित करना होगा :

sudo launchctl load /Library/LaunchDaemons/com.sickbeard.sickbeard.plist

आपके लिए रास्ता अलग हो सकता है, लेकिन आपको इसके स्थान का पता लगाने के लिए फ़ाइल का पता लगाना होगा और इसे पास करना होगा जैसा कि मैंने launchctlकमांड को उद्धृत किया है ।


2

संदेश का nothing found to loadअर्थ कभी-कभी होता है कि कॉन्फ़िगरेशन किसी अन्य कॉन्फ़िगरेशन से अधिक है। आप उपयोग करते समय "-w" विकल्प का उपयोग करके लोडिंग को मजबूर करते हैं launchctl load or unload

यदि आपको एक प्लिस्ट फ़ाइल के लोड या अनलोड करने के लिए मजबूर करना है, तो इसका मतलब है कि आपके पास एक कॉन्फिगरेशन है जो प्लिस्ट को ओवरराइड करता है। यह ओवरराइडिंग तब बनाई जाती है जब आप "-w" का उपयोग करते हैं अन्यथा ओवरराइड फ़ाइल में कोई ओवरराइड नहीं जोड़ा जाएगा। इस मामले को रोकने के लिए, नीचे दी गई फ़ाइल को संपादित करें, उस कार्य लेबल को खोजें जिसे आप ओवरराइड को निकालना चाहते हैं, आवश्यक लाइनें हटाएं:

pico /var/db/launchd.db/com.apple.launchd/overrides.plist

उदाहरण के लिए, इस लाइन को हटा दें

<key>com.mydomain.myjob</key>
<dict>
        <key>Disabled</key>
        <true/>
</dict>

तब आप उपयोग कर सकते हैं: launchctl load or unload /Library/LaunchDaemons/com.mydomain.myjob.plist"-w" या "-F" की आवश्यकता के बिना, आपके पास संदेश नहीं होना चाहिएnothing found to load


1

आप .pl launchctlको लोड करने के लिए बल के लिए -F ध्वज जोड़ना चाह सकते हैं । इसके अलावा, सुनिश्चित करें कि .plist पथ launchctlखोज में है। यदि आपका .plist कहीं और है, तो आप -D फ्लैग को भी जोड़ सकते हैं और डोमेन को निर्दिष्ट कर सकते हैं। मैनपेज से:

-D डोमेन
प्लिस्ट (5) में दी गई फाइलों की तलाश करें। मान्य डोमेन में "सिस्टम," "स्थानीय," "नेटवर्क" और "सभी" शामिल हैं। सत्र प्रकार प्रदान करते समय, "उपयोगकर्ता" नामक एक अतिरिक्त डोमेन उपयोग के लिए उपलब्ध है। उदाहरण के लिए, दिए गए सत्र प्रकार के बिना, "-D सिस्टम" संपत्ति सूची फ़ाइलों से / System / Library / LaunchDaemons से लोड होगी। एक सत्र प्रकार बीतने के साथ, यह / System / Library / LaunchAgents से लोड हो जाएगा।

सुनिश्चित करें कि आप मेन्यू में निहित सभी सूचनाओं की अच्छी तरह से समीक्षा करते हैं - यदि आपका कॉल ठीक से कॉन्फ़िगर नहीं किया गया है, तो आप वास्तव में चीजों को मिटा सकते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.