การติดตั้ง MongoDB ล้มเหลวบน Ubuntu 16.04


12

ฉันทำตามคำแนะนำในเว็บไซต์ MongoDB อย่างเป็นทางการ ( https://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/ ) และฉันได้รับข้อผิดพลาดนี้เมื่อพยายามติดตั้ง MongoDB วิธีแก้ไขปัญหานี้และสิ่งที่ผิดปกติ จำไว้ว่าฉันใช้ Ubuntu รุ่นล่าสุด 16.04

sudo apt-get install -y mongodb-org

Reading package lists... Done

Building dependency tree

Reading state information... Done

You might want to run 'apt-get -f install' to correct these:

The following packages have unmet dependencies:

mongodb-org : 

Depends: mongodb-org-shell but it is not going to be installed

Depends: mongodb-org-server but it is not going to be installed

Depends: mongodb-org-mongos but it is not going to be installed

Depends: mongodb-org-tools but it is not going to be installed

virtualbox-5.0 : Depends: libqt4-opengl (>= 4:4.7.2) but it is not going to be installed

Depends: libsdl1.2debian (>= 1.2.11) but it is not going to be installed

Recommends: libsdl-ttf2.0-0 but it is not going to be installed

E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

แก้ไขหัวข้อ. MongDB -> MongoDB


ฉันลองใช้คำแนะนำในการติดตั้งที่โพสต์โดย t9toqwerty / muru แต่ยังคงมีข้อความที่แพคเกจต่อไปนี้มีการพึ่งพาที่ไม่คาดคิด: สิ่งที่ใช้ได้ผลสำหรับฉันคือการติดตั้ง MongoDB จาก tarball ด้วยตนเอง: docs.mongodb.com/manual/tutorial/install-mongodb-on-linux
Josh B'Gosh

คุณกำลังพยายามติดตั้งรุ่น MongoDB ใด?
Elouan Keryell- แม้แต่

คำตอบ:


8

ติดตั้ง mongodb ใน Ubuntu 12.04, 14.04, 16.04

  1. อิมพอร์ตพับลิกคีย์ที่ใช้โดยระบบการจัดการแพ็กเกจ

    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5
    
  2. สร้างไฟล์รายการสำหรับ MongoDB

    ใน Ubuntu 12.04 (คัดค้าน):

    echo "deb http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
    

    ใน Ubuntu 14.04:

    echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list
    

    ใน Ubuntu 16.04:

    echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list
    
  3. โหลดฐานข้อมูลแพคเกจท้องถิ่น

    sudo apt-get update
    

    มันจะโยนคำเตือน

    W: http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/Release.gpg: Signature by key 492EAFE8CD016A07919F1D2B9ECBEC467F0CEB10 uses weak digest algorithm (SHA1)
    

    เพียงไม่สนใจมัน

  4. ติดตั้งแพ็คเกจ MongoDB

    sudo apt-get install -y mongodb-org
    

หลังจากการติดตั้งคุณสามารถเริ่ม MongoDB โดยใช้

sudo service mongod start

เพื่อหยุดการใช้ MongoDB

sudo service mongod stop

เพื่อรีสตาร์ท MongoDB ใช้

sudo service mongod restart

หากไม่ได้ผลให้ตรวจสอบที่นี่เพื่อดูว่ามีการอัปเดตขั้นตอนใดหรือไม่: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/


3
คุณไม่ได้ใช้ mongo ล่าสุด 3.4 ตามที่อ้างอิงในลิงค์ OP ของ mongo
Scott Stensland

ขอบคุณสำหรับคำตอบนี้!
DuDoff

11

TL; DR;

ลองใช้คำสั่งนี้

sudo apt-get install libcurl3 openssl

แล้ว

sudo apt-get install mongodb-org

บันทึกการ:

ดังนั้นฉันจึงได้ปฏิบัติตามคำแนะนำอย่างเป็นทางการของ Mongo 4.0 ที่นี่และรับสิ่งนี้หลังจากทำงานsudo apt-get install mongodb-org

The following packages have unmet dependencies:
 mongodb-org : Depends: mongodb-org-server but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

จากนั้นฉันเพิ่ม mongodb-org-server ด้วยตนเองลงในคำสั่งการติดตั้ง:

sudo apt-get install mongodb-org mongo-db-server

แต่ฉันก็ได้

mongodb-org-server : Depends: libcurl3 (>= 7.16.2) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

หลังจากติดตั้งเหล่านี้ด้วยตนเอง:

sudo apt-get install libcurl3 openssl

ฉันทำให้มันทำงานกับซิงเกิ้ล:

sudo apt-get install mongodb-org

คำสั่ง


@ อาร์มันดีใจที่ฉันสามารถช่วยได้)
naffiq

1

ฉันลองใช้คำแนะนำในการติดตั้งที่โพสต์โดย t9toqwerty / muru แต่ยังคงได้รับข้อความ

the following packages have unmet dependencies:

สิ่งที่ใช้ได้ผลสำหรับฉันคือการติดตั้ง MongoDB จาก tarball ด้วยตนเอง ลิงค์เดิมคือ: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-linux/

1) ดาวน์โหลดไบนารี

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

2) แตกไฟล์

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

3) คัดลอกไฟล์เก็บถาวรไปยังไดเรกทอรีเป้าหมาย

mkdir -p mongodb
cp -R -n mongodb-linux-x86_64-3.4.9/ mongodb

4) วางตำแหน่งในตัวแปร PATH

export PATH=<mongodb-install-directory>/bin:$PATH

(แทนที่<mongodb-install-directory> ด้วยพา ธ ไปยังไฟล์เก็บถาวร MongoDB ที่แยกสำหรับฉันนี่คือ /home/myusername/mongodb/mongodb-linux-x86_64-3.4.9)

ถัดไปมาเรียกใช้:

1) สร้างไดเรกทอรีข้อมูล

mkdir -p /data/db

2) ตั้งค่าการอนุญาต

สิ่งนี้ทำให้แน่ใจว่าผู้ใช้ได้อ่านและเขียนสิทธิ์สำหรับไดเรกทอรี ค้นหาไดเรกทอรีในเทอร์มินัลแล้วป้อน

chmod 777 /data/db

3) เรียกใช้!

mongod

หากคุณไม่ได้ตั้งค่าตัวแปร PATH ในขั้นตอนที่ 4 ให้เรียกใช้ mongo โดยป้อนเส้นทางไปยังไฟล์ bin ของคุณเช่นนั้น

<path to binary>/mongod


0

Xenial (Ubuntu 16.04); MongoDB v. 3.2.11

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-3.2.list
apt-get -qq update   (if you are using docker)
apt-get update
apt-get install mongodb-org

ฉันเพิ่งทำไปและมันก็โอเค

แบบอักษร: https://www.digitalocean.com/community/tutorials/how-to-install-mongodb-on-ubuntu-16-04


ฉันเดาว่า OP พยายามติดตั้ง MongoDB 3.6 เนื่องจากฉันมีปัญหาเดียวกันเมื่อทำการติดตั้งเวอร์ชั่นนั้น ดังนั้นการติดตั้งเวอร์ชั่น 3.2 อาจไม่ใช่วิธีที่ยอมรับได้
Elouan Keryell- แม้แต่

0

ฉันเผชิญหน้ากับสองสามวันเดียวกัน ลองวิ่งตามความถนัด สิ่งนี้จะดูแลการติดตั้งแพ็คเกจการพึ่งพาทั้งหมด

sudo apt-get install aptitude
sudo aptitude install mongodb-org
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.