ทำไมฉันถึงติดตั้ง mongodb 3.0 บน Ubuntu 14.04 32 บิตไม่ได้?


9

ฉันได้ติดตามการประมูลอย่างเป็นทางการทั้งหมดที่ระบุไว้ที่นี่:

หน้าอย่างเป็นทางการ

ในรายละเอียดฉันได้ทำ:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10

(ดูเหมือนว่าโอเค)

echo "deb http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list

(ดูเหมือนว่าใช้ได้เนื่องจากไฟล์ /etc/apt/sources.list.d/mongodb-org-3.0.list ถูกสร้างขึ้นพร้อมกับรายการที่ถูกต้อง)

sudo apt-get update

(ดูเหมือนว่าตกลงเพราะฉันเห็น repos ในรายการ)

แต่เมื่อฉัน:

sudo apt-get install -y mongodb-org

มันบอกเสมอว่า "ไม่พบแพ็คเกจ mongodb-org"

ถ้าฉันทำ:

sudo apt-get install -y mongodb

ใช้งานได้ แต่ไม่ได้ติดตั้งเวอร์ชัน 3.0 แต่เป็นเวอร์ชั่น 2.4

ฉันได้ลองติดตั้ง 3.0 หลายครั้งหลังจากลบ / กำจัดเวอร์ชัน 2.4 แล้ว แต่ด้วยผลลัพธ์เดียวกัน: "ไม่พบแพ็คเกจ mongodb-org"

ฉันจะติดตั้งเวอร์ชัน 3.0 ได้อย่างไร

แก้ไข

apt-cache search mongodbไม่พบข้อมูลใด ๆ เกี่ยวกับmongodb-org

นี่คือเนื้อหาของ/etc/apt/sources.list.d/mongodb-org-3.0.list :

deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse

นี่คือบรรทัดที่เกิดจากการอัพเดต apt-getเกี่ยวกับ mondodb:

Ign http://repo.mongodb.org trusty/mongodb-org/3.0 InRelease
Trovato http://repo.mongodb.org trusty/mongodb-org/3.0 Release.gpg
Trovato http://repo.mongodb.org trusty/mongodb-org/3.0 Release
Trovato http://repo.mongodb.org trusty/mongodb-org/3.0/multiverse i386 Packages
Ign http://repo.mongodb.org trusty/mongodb-org/3.0/multiverse Translation-it_IT
Ign http://repo.mongodb.org trusty/mongodb-org/3.0/multiverse Translation-it
Ign http://repo.mongodb.org trusty/mongodb-org/3.0/multiverse Translation-en 

ฉันกำลังใช้งาน Ubuntu 14.04 LTS 32 บิต บางที repo นั้นมีไว้สำหรับ x64 เท่านั้น? หากเป็นกรณีนี้ฉันจะติดตั้ง mongodb 3.0 บนเครื่อง 32 บิตได้อย่างไร (ฉันไม่เคยเห็นอะไรเกี่ยวกับความแตกต่างนี้ในเอกสาร)

แก้ไข 2

ดังนั้นดูเหมือนว่าจะไม่มีแพ็คเกจ 32 แพ็คเกจใน repos เหล่านั้น ตอนนี้ฉันจะหาพวกเขาได้ที่ไหน ฉันคิดว่ามันน่าแปลกใจเพราะ docs (เอกสารทางการ ) ระบุเฉพาะ repo นี้และไม่มีการพูดถึงความแตกต่าง 32/64 บิต


1
ไม่apt-cache search mongodbพบแพคเกจของคุณหรือไม่ อาจมีชื่ออื่นหรือไม่?
Esa Jokinen

กรุณาโพสต์เนื้อหาของไฟล์/etc/apt/sources.list.d/mongodb-org-3.0.listเช่นเดียวกับบรรทัดจากการapt-get updateแสดง repo นี้การตรวจสอบ? repo มี mongodb-org meta-package สำหรับ x64 Trusty ดังที่เห็นที่นี่: repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/ ......
Hyppy

คำตอบ:


8

ไม่มีแพ็กเกจ 32 บิตในที่เก็บเหล่านั้น:

ตรวจสอบด้วยตัวเองเองว่า amd64:

wget -O - \
  http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.1/multiverse/binary-amd64/Packages.gz \
  2>/dev/null | zless | grep ^Package
Package: mongodb-org-unstable
Package: mongodb-org-unstable-mongos
Package: mongodb-org-unstable-server
Package: mongodb-org-unstable-shell
Package: mongodb-org-unstable-tools

ในขณะที่สำหรับ i686 จะไม่ส่งคืนแพ็คเกจใด ๆ

wget -O - \
  http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.1/multiverse/binary-i386/Packages.gz 2>/dev/null

หรือหากคุณต้องการคลิกให้เปิดเบราว์เซอร์ไปยังตำแหน่งนั้น:

xdg-open http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.1/multiverse/binary-i386/

นอกจากนี้ตรวจสอบนี้

ยิ่งกว่านั้นผู้ขายไม่แนะนำให้ใช้ 32 บิตไบนารี่ในการใช้งานจริงเนื่องจากข้อ จำกัด :

สำหรับการปรับใช้การผลิตให้เรียกใช้ MongoDB บนระบบ 64 บิตเสมอ


ฉันรู้ข้อ จำกัด : อันที่จริงแล้วในการผลิตและทดสอบเรามีเครื่อง 64 บิต ฉันต้องติดตั้ง mongo 3.0 ในเครื่องพัฒนา 32 บิตของฉัน (ฉันไม่สามารถติดตั้ง 64 บิตดังนั้นในฐานะแขกในเครื่องเสมือนของฉันเนื่องจากข้อ จำกัด ด้านฮาร์ดแวร์)
Moppo

ถ้าคุณถูกบังคับให้ใช้เครื่องที่ไม่สามารถเรียกใช้ VM 64 บิตที่จำเป็นในการทำงานอย่างถูกต้องคุณควรแจ้งข้อกังวลนี้กับผู้จัดการของคุณ นั่นหรือ ...
dawud

ไม่นี่เป็นเครื่องพัฒนาส่วนตัวของฉัน ฉันไม่มีผู้จัดการ :) ความจริงก็คือฉันต้องการทราบว่าเป็นไปได้หรือไม่ที่จะติดตั้ง mongo 3.x บนเครื่อง 32 บิต ถ้าเป็นไปได้ (ดูเหมือนว่าจากเอกสาร) ฉันต้องการทราบว่ามี repo ที่จะดึงแพ็คเกจจากหรือไม่ ถ้ามันเป็นไปไม่ได้ฉันจะประเมินว่าจะทำอย่างไร
Moppo

แล้วคุณเป็นผู้จัดการของคุณ อาร์กิวเมนต์ยังคงมีอยู่
dawud

ฉันค้นหาโดยไม่ประสบความสำเร็จสำหรับ 32 บิต repos ดังนั้นฉันยอมรับคำตอบของคุณว่ามีประโยชน์มากที่สุด ขอบคุณ
Moppo

1

ตาม mongdodb docsคุณสามารถลองติดตั้งการติดตั้ง tarball นั่นคือ (นำมาจากเอกสาร):

  1. ดาวน์โหลดไฟล์ไบนารีที่นี่หรือใช้curl -O https://fastdl.mongodb.org/linux/mongodb-linux-i686-3.0.6.tgz
  2. แตกไฟล์ tar -zxvf mongodb-linux-i686-3.0.6.tgz
  3. คัดลอกไฟล์ที่แตก

    mkdir -p mongodb
    cp -R -n mongodb-linux-i686-3.0.6/ mongodb
    
  4. เพิ่มลงใน PATH

    #example in ~/.bashrc
    export PATH=<mongodb-install-directory>/bin:$PATH
    

หมายเหตุตามที่ระบุไว้ใน mongodb โดยใช้วิธีนี้จะมีข้อ จำกัด บางอย่าง

"การกระจายแบบดั้งเดิมแบบ 32 บิตนี้ไม่รวมการเข้ารหัส SSL และ จำกัด อยู่ที่ 2GB ของข้อมูลโดยทั่วไปคุณควรใช้การสร้างแบบ 64 บิต"

แต่ในที่สุดมันก็ขึ้นอยู่กับคุณ


นี่เป็นคำตอบที่ถูกต้องที่สุดเพราะจริง ๆ แล้วตอบคำถามของ OP
Prahlad Yeri

-1
echo "deb http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list

เพิ่มที่เก็บโดยใช้รหัสด้านบน จากนั้นรันคำสั่ง update

sudo apt-get update

และจากนั้นให้คำสั่งในการติดตั้ง mongodb ให้พารามิเตอร์ทั้งหมดอย่างแข็งขันใช่ใช้

sudo apt-get install --force-yes mongodb

ฉันหวังว่านี่จะช่วยได้.


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