MongoDB 2.6 उबंटू 15.04 पर शुरू नहीं होता है


51

मैं साफ स्थापित Ubuntu 15.04 पर MongoDB 2.6 स्थापित:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list
sudo apt-get update
sudo apt-get install -y mongodb-org

यह बिना किसी समस्या के समाप्त हो गया। हालाँकि, जब मैंने इसे शुरू करने की कोशिश की, तो मुझे निम्नलिखित त्रुटि मिली:

$ sudo service mongod start
Failed to start mongod.service: Unit mongod.service failed to load: No such file or directory.

मैं इसे कैसे ठीक करूं?

जवाबों:


65

मैं डेबियन व्हीज़ रिपोजिटरी से स्थापित हुआ और यह ठीक काम करता है।

पहले सुनिश्चित करें कि आप मोंगोडब-ऑर्ग पैकेज और उसकी सभी निर्भरताएँ दूर करते हैं:

sudo apt-get purge mongodb-org
sudo apt-get autoremove

आपके द्वारा बनाए गए पुराने mongodb.list को निकालें:

sudo rm /etc/apt/sources.list.d/mongodb.list

इसके बजाय डेबियन रिपॉजिटरी का उपयोग करें:

echo "deb http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list

अपडेट और फिर से इंस्टॉल करें:

sudo apt-get update
sudo apt-get install -y mongodb-org

उसके बाद, आप सर्वर को सफलतापूर्वक शुरू कर सकते हैं:

sudo service mongod start

या

systemctl start mongod

(जैसा कि रोमन गौफमैन की टिप्पणी के जवाब में एर्नी हर्षे ने स्पष्ट किया है: https://jira.mongodb.org/browse/SERVER-17742 )


1
मैंने कोशिश की और मोंगॉड शुरू करने की कोशिश में सेवा नहीं मिली
मोशे रेवह

2
क्या आप सुनिश्चित हैं कि आप आश्रितों को स्वायत्त करते हैं? मुझे वह भी मिल गया, लेकिन फिर मुझे एहसास हुआ कि मैंने सभी मंगोलोड संबंधित पैकेज नहीं निकाले हैं। उन सभी को हटाने और मट्ठा भंडार से स्थापित करने के बाद, यह सिस्टमड के साथ ठीक काम कर रहा है।
डायल्सन सेल्स

1
मुझे बहुत सिरदर्द से बचाया
श्रीवत्स हरीश वेंकटरमण

1
धन्यवाद। ऑटोरेमोव के बाद पर्ज (लगभग इसे भूल गया) ने चाल चली।
नेनाद वाइसिसविच

14.04 पर मेरे मामले में, लेकिन 15.04 सिलाई की संभावना है /var/log/syslog, असफल प्रयास की पुष्टि करने के बाद, संपादन तब /etc/init/mongodb.confभी मदद कर सकता है जब आप एक गैर-मानक डेटा निर्देशिका, लॉग निर्देशिका या उपयोगकर्ता उदाहरण का उपयोग कर रहे हों।
पर Joes

25

MongoDB टीम का कहना है कि वे Ubuntu 15.04 का समर्थन नहीं करेंगे और इसके बजाय 16.04 का समर्थन करने की योजना ( https://jira.mongodb.org/browse/SERVER-17742 देखें )।

उबंटू 15.04 अपस्टार्ट से सिस्टमड तक डिफ़ॉल्ट इनिट सिस्टम को आगे बढ़ाता है। मुझे MongoDB 3.0 को systemd के साथ शुरू करने में कोई सफलता नहीं मिली।

आप इंस्टॉल करके वापस अपस्टार्ट में जा सकते हैं upstart-sysv:

sudo apt-get install upstart-sysv

फिर रिबूट और MongoDB ऊपर होना चाहिए।

मैं समय पर वापस चीजों को स्विच किए बिना Ubuntu 15.04 पर MongoDB चलाने का एक आसान तरीका खोजने की उम्मीद करता हूं।


2
यह अब तक इस समस्या को हल करने का सबसे अच्छा तरीका है। यदि कोई अन्य तरीके जानता है, तो कृपया यहाँ साझा करें।
फर्नांडो कोष

मेरे मामले में upstart-sysv को इंस्टॉल करना और बस क्रैश हो जाना।
दीदाक मोंटेरो

@DidacMontero अन्य विकल्पों के लिए wiki.ubuntu.com/SystemdForUpstartUser पर देखें
मोशे रेवह

मेरे लिए Ubuntu 15.04 पर काम करता है, काम के लिए धन्यवाद!
लील '22

यह मेरे लिए पूरी तरह से काम करता है।
स्लिमफ्लेम

4

आप सीधे mongodb.org से प्रकाशित संकुल से स्थापित कर रहे हैं। आपको उबंटू रिस्पांसरी में आपूर्ति किए गए पैकेज से स्थापित होना चाहिए। Mongodb.org द्वारा छोड़े गए छेद को भरने के लिए सिस्टमियन सर्विस यूनिट्स के साथ डेबियन / उबंटू पैकेज को पैच किया गया है।

( mongodb.serviceWWW पर इकाई फ़ाइलों की कोई कमी नहीं है । यह एक, या तो लिखना मुश्किल नहीं है। मेरे पास है।)

विशेष रूप से: आप मिल जाएगा एक ऐसी सेवा इकाई में Ubuntu संस्करण 15 के लिए MongoDB-सर्वर संस्करण 2.6 पैकेज । तो बस उस पैकेज को स्थापित करें।

(ध्यान दें कि डेबियन / उबंटू-आपूर्ति सेवा इकाइयां मोंगो-अनुशंसित सिस्टमड सेवा इकाई निर्देश लागू नहीं करती हैं )।

आगे की पढाई


हालाँकि यह दृष्टिकोण उन लोगों के लिए समस्या का समाधान नहीं करता है जो MongoDB> = 3.0 चाहते हैं
डायल्सन सेल्स

हाँ यह करता है। आपने स्पष्ट रूप से दूसरे पैराग्राफ या आगे पढ़ने को नहीं पढ़ा।
JdeBP

4

मैंने एक Systemd स्क्रिप्ट बनाई जो Ubuntu 15.04+ और Mongo 3.0+ के लिए काम करती है:

[Unit]
Description=High-performance, schema-free document-oriented database
Documentation=man:mongod(1)
After=network.target

[Service]
Type=forking
User=mongodb
Group=mongodb
RuntimeDirectory=mongod
PIDFile=/var/run/mongod/mongod.pid
ExecStart=/usr/bin/mongod -f /etc/mongod.conf --pidfilepath /var/run/mongod/mongod.pid --fork
TimeoutStopSec=5
KillMode=mixed

[Install]
WantedBy=multi-user.target

https://gist.github.com/benileo/ada486d73f58dd93a0ee

सुनिश्चित करें कि आपने अपनी डेटा डायरेक्टरी को सेट किया है /etc/mongod.conf


1
यह सबसे अच्छा उपाय है।
जे। ब्रूनी

लिंक अब काम नहीं करता है
Hotbelgo

लिंक तय किया।
बेनीलियो

यकीन के लिए, यह सबसे अच्छा समाधान के रूप में चिह्नित किया जाना चाहिए।
वेडनी यूरी

1

यह सबसे अच्छा जवाब नहीं है? एक डुप्लीकेट प्रश्न से: https://askubuntu.com/a/694226/255468 @ @clclen द्वारा


यह सिर्फ systemd के लिए एक सेवा फ़ाइल की कमी है। कार्तिक की तरह ऊपर जाने के लिए वापस जाने की जरूरत नहीं है या https://docs.mongodb.org/manual/installation/ में वर्णित किसी अन्य रिपॉजिटरी का उपयोग करें

निम्नलिखित सामग्री के साथ एक फ़ाइल /lib/systemd/system/mongodb.service बनाएं:

[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target

[Service]
User=mongodb
ExecStart=/usr/bin/mongod --quiet --config /etc/mongodb.conf

[Install]
WantedBy=multi-user.target

1

https://jira.mongodb.org/browse/SERVER-17742

ऐसा लगता है कि यह संभवत: Ubuntu 16.04 तक> 2.6.3 के लिए पूरी तरह से तय नहीं किया जाएगा, जब तक कि एक मजबूत आक्रोश न हो।

इसलिए मेरे लिए समाधान जारी करना था:

sudo apt-get install --reinstall mongodb


0

इनमें से कई उत्तर मानगो 3.0 से संबंधित हैं, जबकि प्रश्न विशेष रूप से 2.6 के बारे में पूछा गया है।

मुझे 10gen से डेबियन रिपॉजिटरी का उपयोग करके 2.6 स्थापित करने में सफलता मिली है। यह पूरी तरह से Ubuntu 15.04 के साथ काम करता प्रतीत होता है।

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
echo 'deb http://downloads-distro.mongodb.org/repo/debian-sysvinit dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list
sudo apt-get update
sudo apt-get install mongodb-org

स्रोत: Ubuntu 14.10, 14.04 और 12.04 LTS पर MongoDB 2.6 कैसे स्थापित करें


0

जबकि सवाल संस्करण 2.6 के लिए है। मुझे Unit mongod.service failed to loadअपने Ubuntu 15.04 में संस्करण 3.0.6 के लिए सटीक वही त्रुटि मिल रही थी । अंत में ऊपर दिए गए Dielson Sales द्वारा उल्लिखित समान मट्ठा भंडार का उपयोग करके हल किया गया।

और स्थापना के बाद (@Dielson Sales द्वारा विस्तृत चरणों का पालन करते हुए) उपरोक्त त्रुटि का सामना करना पड़ा। यहां बताया गया है कि आखिरकार मैंने कैसे हल किया।

A) MongoDB के डिफ़ॉल्ट डेटा स्टोर फ़ाइलों को / var / lib / mongodb से / data / db में बदलें

  • सबसे पहले नया / डाटा / डीबी डायरेक्टरी बनाएं sudo mkdir -p /data/db

  • Mongod.conf फ़ाइल खोलें sudo gedit /etc/mongod.confऔर नीचे के रूप में "dbpath" लाइन बदलें

  • बदलें dbpath = / var / lib / MongoDB के लिए dbpath = / डेटा / db और फ़ाइल सहेजें।

  • फिर पुराने डिफ़ॉल्ट / var / lib / mongodb को हटा दें

  • अब हमें mongod उपयोगकर्ता के स्वामित्व वाली सभी निर्देशिकाएं / फाइलें बनानी होंगी

बी) तो भागो sudo chown -R mongodb:mongodb /data/db

और अब अंत में मैं के साथ शुरू कर सकते हैं sudo service mongod start

और धोखा है कि सेवा के साथ चल रहा है sudo systemctl status mongod - यह नीचे के समान एक संदेश दिखाना चाहिए

Loaded: loaded (/etc/init.d/mongod)

Active: active (running) since Thu 2015-09-03 04:57:49 IST; 7s ago

मेरे ब्लॉग पोस्ट में अपने कदम विस्तृत रखें


0

सबसे पहले, डाउनलोड mongodb:

curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz

निकालने डाउनलोड:

tar -zxvf mongodb-linux-x86_64-3.0.6.tgz

मोंगॉड (मोंगोडब-लिनक्स-x86_64-3.0.6.tgz / bin / mongod) -dbpath विशेषता के साथ चलाएं:

sudo ./mongod --dbpath /path/of/the/directory

यह आपकी किसी भी पसंद की एक खाली निर्देशिका हो सकती है

और अंत में, रन मूंगो (मोंगोडब-लिनक्स-x86_64-3.0.6.tgz / bin /ongong)

./mongo

मेरे ubuntu 15 पर काम किया :)

मेरे बुरे अंग्रेजी के लिए खेद है, मैं ब्राजील में रहता हूं


0

खोज करने के घंटों के बाद, समाधान इस आदेश का उपयोग करके मेरे ubuntu को 15.04 से 16.04 तक अपग्रेड करना था:

चरण 1

sudo do-release-upgrade -d 

घबराहट दूर करने के लिए आपको घबराहट होने में कुछ मिनट लगेंगे:

चरण 2

sudo apt-get purge mongodb-org 
sudo apt-get autoremove`  
rm /etc/apt/sources.list.d/mongodb-org-3.0.list`  

और अब, mongodb स्थापित करें लेकिन इस स्रोत का उपयोग कर:

echo 'deb http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.0 main' | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list

चरण 3

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10  
echo ‘deb http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.0 main’ | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
sudo apt-get update
sudo apt-get install mongodb-org
sudo service mongod status

और बस।

नोट: यदि आपको 'E:' टाइप की कोई त्रुटि मिलती है, तो पहली पंक्ति में 'deb' टाइप करें। । । फ़ाइल में mongodb-org-3.0.list

आपको बस इतना करना है कि gedit का उपयोग करके इस फ़ाइल को प्राप्त करें और वाक्य के अंत और अंत में 'हटाएं'।


यह भाग "समाधान मेरे ubuntu को 15.04 से 16.04 तक उन्नत करने के लिए था ..." फिलहाल इसका कोई मतलब नहीं है, क्योंकि 16.04 को अभी तक जारी नहीं किया गया है।
क्लीमकुरा

1
@clearkimura हाँ यह है। खैर, अल्फा में। और जो भी हो, उबंटू का दूसरा दैनिक निर्माण 16.04 मेरे कंप्यूटर पर स्थापित है, और मैंने कोई समस्या नहीं देखी है।
स्टार ओएस

0

उबंटू 15.04+ अपस्टार्ट के बजाय सिस्टमड का उपयोग करता है । MongoDB के आधिकारिक इंस्टॉल गाइड से शुरू करें । फिर उनके अधिकारी का उपयोग करें mongod.service:

[Unit]
Description=High-performance, schema-free document-oriented database

[Service]
User=mongod
Group=mongod
Environment="OPTIONS=--quiet -f /etc/mongod.conf"
ExecStart=/usr/local/bin/mongod $OPTIONS run
PIDFile=/var/run/mongodb/mongod.pid

[Install]
WantedBy=multi-user.target

डाउनलोड, पैच, सेवा स्थापित करें और dir + अनुमतियां स्थापित करें

$ curl -OL https://raw.githubusercontent.com/mongodb/mongo/1663f45b4e33e058a0203a81f50574a870882c34/rpm/mongod.service
$ sed -i 's/\/usr\/local/\/usr/g' mongod.service
$ sed -i '/Desc/a After=network.target' mongod.service
$ sudo sed -i '0,/\/var\/lib\/mongodb/s//\/data\/db/' /etc/mongod.conf
$ sudo cp mongod.service /lib/systemd/system/mongo.service
$ sudo mkdir -p /data/db
$ sudo chown -R mongodb:mongodb /data
$ sudo systemctl daemon-reload
$ sudo systemctl enable mongod

सेवा शुरू करें

$ sudo systemctl start mongod

सेवा की स्थिति जांचें

$ sudo systemctl status mongod

0

आपने अपनी कमांड में एक टाइपो बनाया।

इसके बजाय इसका उपयोग करने का प्रयास करें: sudo service mongodb start

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