मैक ओएस (होमब्रेव के बिना) पर मच्छरदानी दलाल ऑटो-स्टार्ट कैसे करें?


2

मैं समझता हूं कि होमब्रे का उपयोग करके, एक प्लिस्ट फ़ाइल प्रदान की जाएगी और एक उपयोगकर्ता उस प्लिस्ट फ़ाइल को स्थापित करने के लिए लॉन्चर का उपयोग कर सकता है।

लेकिन, मैं होमब्रे (न ही मैकपोर्ट) का उपयोग नहीं कर रहा हूं। मैंने मच्छर भगाने के स्रोत वितरण से सीधे मच्छरदानी बायनेरिज़ का निर्माण किया और मैं मच्छर दलालों को स्वचालित रूप से (अन्य डेमन की तरह) शुरू करने में सक्षम होना चाहूंगा।

जवाबों:


2

होमब्रे मच्छर लॉन्च एजेंट इस तरह दिखता है:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>Label</key>
  <string>homebrew.mxcl.mosquitto</string>
  <key>ProgramArguments</key>
  <array>
    <string>/usr/local/opt/mosquitto/sbin/mosquitto</string>
    <string>-c</string>
    <string>/usr/local/etc/mosquitto/mosquitto.conf</string>
  </array>
  <key>RunAtLoad</key>
  <true/>
  <key>KeepAlive</key>
  <false/>
  <key>WorkingDirectory</key>
  <string>/usr/local/var/mosquitto</string>
</dict>
</plist>

Mosquitto की स्थापना निर्देशिका पर निर्भर करता है में दो पथ तार को संशोधित ProgramArguments और की राह WorkingDirectory

इसके अलावा लेबल को org.user.mosquitto (भावी होमबॉव मच्छर इंस्टॉल के साथ भविष्य के टकराव से बचने के लिए) को संशोधित करें और फिर फाइल को org /user.mosquitto.plist के रूप में ~ / लाइब्रेरी / लॉन्चअगेंट्स / के रूप में सहेजें।

के साथ एजेंट लोड करें launchctl load ~/Library/LaunchAgents/org.user.mosquitto.plist


कुछ परिस्थितियों में (अपने प्रश्न में निर्दिष्ट विकल्प स्थापित न करें), यह आवश्यक हो सकता है कि आप plist फ़ाइल को / Library / LaunchAgents (~ के बजाये / Library / LaunchAgents) में सेव करें, अनुमतियों को रूट में बदलें: wheel 644 और इसे इसके साथ शुरू करें:

sudo launchctl load /Library/LaunchAgents/org.user.mosquitto.plist

अब आप इंस्टॉलेशन का परीक्षण कर सकते हैं और सुनिश्चित कर सकते हैं कि सर्वर सफलतापूर्वक चल रहा है। एक नई कमांड विंडो खोलें और एक श्रोता शुरू करें।

mosquitto_sub -t topic/state

एक अन्य विंडो में, श्रोता को एक संदेश भेजें।

mosquitto_pub -t topic/state -m "Hello World"

धन्यवाद। आपके उत्तर में उल्लेखित एक बात यह सुनिश्चित करने के लिए नहीं है कि प्लास्ट फाइल में दिए गए वर्कडायरेक्ट्री मौजूद है। एक और बात यह है कि मैंने launchctl list | grep mosquittoमच्छरदानी ब्रोकर को सफलतापूर्वक लॉन्च किया है, यह देखने के लिए मैंने पहले फ़ील्ड (एक वैध पीआईडी ​​होना चाहिए) का उपयोग किया और जांच की।
tdwong.star

@TzunghsingDavidWong Hmm मैंने इसे स्पष्ट रूप से नहीं बल्कि निहित रूप से कहा: "मच्छर की आपकी स्थापना निर्देशिका के आधार पर [...] में दो पथ स्ट्रिंग्स को संशोधित करें। ;-)
क्लानोमथ

मेरा बुरा ... उस बिंदु को नजरअंदाज कर दिया। मेरे मामले में, मैंने कुछ भी स्थापित नहीं किया। मैंने बस एक बार-मशीन बैकअप से मच्छर बिनरी और साझा पुस्तकालयों को पुनर्प्राप्त किया और उन्हें मेरे / usr / स्थानीय में गिरा दिया। और वे सिर्फ 8-) काम करते हैं
tdwong.star
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.