web-dev-qa-db-ja.com

ubuntu 18.04 LTSにmongodbを適切にインストールできない

Ubuntu 18.04 LTSにmongodbをインストールしようとしていますが、次のエラーが表示されます

これらを修正するには、「apt --fix-broken install」を実行することをお勧めします。次のパッケージには依存関係が満たされていない:mongodb-org:Depends:mongodb-org-serverしかしインストールされないDepends:mongodb-org-mongosしかしインストールされないDepends:mongodb-org-tools but it Eはインストールされません。依存関係が満たされていない。パッケージなしで「apt --fix-broken install」を試してください(またはソリューションを指定してください)。 umar @ umar-Lenovo-ideapad-320-15ISK:〜/ Desktop/portfolio/async-demo $ Sudo apt-get install -y mongodb

私はこの背後にある理由が彼らのウェブサイトですでに言及されていると信じており、明確に言っています

プラットフォームのサポート

MongoDBは、64ビットLTS(長期サポート)Ubuntuリリースのパッケージのみを提供します。たとえば、14.04 LTS(信頼できる)および16.04 LTS(ゼロ)。詳細については、サポートされているプラ​​ットフォームを参照してください。

これらのパッケージは、他のUbuntuリリースで動作する場合があります。ただし、サポートされていません。

それでは、最新のUbuntu 18.04 LTSにmongodbをインストールする方法を教えてください。わかりやすくするために、エラーを修正するために行ったことをリストします。公式サイトに従ってmongodbをインストールしました

1. Sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
2. echo "deb [ Arch=AMD64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/4.0 multiverse" | Sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list
3. Sudo apt-get update
4. Sudo apt-get install -y mongodb-org

ここで、「apt --fix-broken install」を実行してこれらを修正することをお勧めします。次のパッケージには、満たされていない依存関係があります。

私は試した、

apt --fix-broken install

うまくいかなかった、どこかで走る手がかりを得た

Sudo apt -f install

また、エラーを返しました。

処理中にエラーが発生しました:/var/cache/apt/archives/mongodb-org-server_4.0.0_AMD64.deb /var/cache/apt/archives/mongodb-org-mongos_4.0.0_AMD64.deb/var/cache/apt /archives/mongodb-org-tools_4.0.0_AMD64.deb E:サブプロセス/ usr/bin/dpkgがエラーコードを返しました(1)

主な問題はバージョンとの互換性だと思います。基本的に、Ubuntu 18.04、このバージョンにmongodbをインストールする方法があり、問題なく作業できます。

11
Umar

最初にmongodbをアンインストールする必要があります。次を使用できます。

Sudo apt-get purge mongodb-org*

この後、次のコマンドを使用してmongodbをインストールします。

Sudo apt-get install mongodb

そして、更新:

Sudo apt-get update

Mongodbのインストールが完了しました。以下のコマンドを使用して確認できます。

mongo --version
22
Mohammad Umar

これは、現在のところ、Ubuntu 18.04向けのMongo DBは開発バージョンとしてのみ利用可能であるためです(参照: MongoDB Distros )。

以下を実行してインストールしました。

対応する署名を追加します。

    Sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4B7C549A058F8B6B  

サポートされているバージョンを追加します。

echo "deb [Arch=AMD64] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/development multiverse" | Sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list

更新:

    Sudo apt update

インストール:

Sudo apt install mongodb-org-unstable

「GPGエラー」が発生した場合は、エラーメッセージに表示されているキーを使用して手順1を繰り返します。経由でインストールできる場合があります

Sudo apt install mongodb

しかし、MongoDBによると、これはサポートされておらず、おそらく最新バージョンをインストールしません。

5
Ole Fass

ここでチャイムしたいだけです。私は、MongoDBサーバードキュメントのシニアテクニカルライターです。この投稿は、「Ubuntu 18.04にMongoDBをインストールする」ことを考え出す数少ない投稿の1つです。ここには、インストール用のmongodbパッケージに関するいくつかのコメントがあります。 Ubuntuが提供する非公式mongodbパッケージは、MongoDBによって管理されていません。常に公式のMongoDBを使用する必要がありますmongodb-orgパッケージ。さらに、少し個人的なテストから、mongodbをインストールすると、mongodb-orgので、追加した問題

ローカルでテストしてサブパッケージの1つ(つまり、mongodb-org-server)通常、実際のエラーが明らかになりました(つまり、libcurl3、これは18.04でデフォルトのインストール済みライブラリとして削除されました)。これらの問題は、開発ビルドをテストする際により一般的です(執筆時点では、これは4.2 devシリーズです)。

ローカルシステムにインストールしたパッケージを確認するには、次を実行します。

Sudo apt list --installed | grep mongo

これは、mongodbをインストールした後、mongodb-org

mongo-tools/bionic,now 3.6.3-0ubuntu1 AMD64 [installed,auto-removable]
mongodb-org/bionic,now 4.0.5 AMD64 [installed]
mongodb-org-Shell/bionic,now 4.0.5 AMD64 [installed,automatic]
mongodb-server-core/bionic,now 1:3.6.3-0ubuntu1 AMD64 [installed,auto-removable]

ご覧のとおり、2つのパッケージ(およびdkpgエラーの束)が混在しています。私はapt removeapt autoremove、およびapt purgeシステムを修正します。

3
rkumar-mongo

Ubuntu 18.04 LTS(Bionic)にmongodbバイナリ(手動)をインストールする必要がある場合。この link からmongodb .tgzファイルをダウンロードする必要があります。

1)〜/ Downloadsフォルダーにダウンロードし、mv Downloads/mongodb-linux-x86_64-ubuntu1804-4.0.4.tgz ~/と入力してホームディレクトリに移動します。

2)次に、tar -zxvf mongodb-linux-x86_64-ubuntu1804-4.0.4.tgzと入力して展開します(ホームディレクトリ/ home /)。ここから移動しないでください。

3)次に、/ data/dbの場所にディレクトリを作成し、そのディレクトリに書き込み権限を付与します。

Sudo mkdir -p /data/db

Sudo chmod -R 777 /data/db

4)今、これはトリッキーな領域です。 pwd(現在の作業ディレクトリ)と入力して、hmeディレクトリにあることを確認します。

pwd 

それが表示されます

/home/<your user name>

次に入力

ls -al

このコマンドは、ホームディレクトリにあるすべての隠しファイルを表示し、検索します

~/.bashrc

5).bashrcファイルを編集して書き込みます

export PATH=mongodb-linux-x86_64-ubuntu1804-4.0.4/bin:$PATH

ファイルの種類source ./bashrcを保存します

次に、echo $PATHと表示されるターミナルで~/mongodb-linux-x86_64-ubuntu1804-4.0.4/bin:/home/xenon/.nvm/versions/node/v10.15.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/binと入力します

6)ターミナルタイプmongo --nodbMongoDB Shell version v4.0.4と表示されます

ここから、設定が完了しました。mongodbのインストールをお楽しみください。このスタレーションは少し複雑ですが、この方法により、mongodbのバージョンを簡単に制御し、必要に応じて使用できます。 enter image description here

7)その後、mongodを起動します

>Sudo mkdir -p /var/log && Sudo chmod -R 777 /var/log
>mongod --port 27017 --dbpath /data/db --logpath /var/log/local.log --fork
>mongo --port 27017
2
Kaushik Das

この優れた回答に基づいて: https://stackoverflow.com/a/51421152/659354

このページ: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/

インストールに使用したコマンドMongoDB 4.2

Sudo apt-get purge mongo*-注:mongoを使用して、クライアントとサーバーを削除します。

Sudo apt-get install mongodb-org-注:Mongodb.orgソースがApt-getソースリストに追加された後に実行されるインストールコマンド。

1
Raystorm

実行Sudo apt autoremoveおよび再インストールmongodb.

0
Qiang Zhang

MongoDBをインストールし、ubuntu 18.04でmongodコマンドを使用する最も簡単な方法。

1.パッケージリストを更新します。

    $ Sudo apt update

2. MongoDBをインストールします。

    $ Sudo apt install -y mongodb

3.サービスのステータスを確認します。

    $ Sudo systemctl status mongodb

3a。見るべき

    ● mongodb.service - An object/document-oriented database
      Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor 
      preset:enabled)
      Active: active (running) since Sat 2019-03-11 10:45:01 UTC; 4min 13s ago
      Docs: man:mongod(1)
      Main PID: 2312 (mongod)
      Tasks: 23 (limit: 1153)
      CGroup: /system.slice/mongodb.service
            └─2312 /usr/bin/mongod --unixSocketPrefix=/run/mongodb --config
      /etc/mongodb.conf

4.デフォルトのport 27017でMongoDBへのアクセスを許可するには

     $ Sudo ufw allow 27017

5.ステータスを確認する

     $ Sudo ufw status

5a。見るべき

     Status: active
     To                         Action      From
     --                         ------      ----
     27017                      ALLOW       Anywhere
     27017 (v6)                 ALLOW       Anywhere (v6)

5b。 inactiveを返す場合

     $ Sudo ufw enable

     Output:
     Firewall is active and enabled on system startup.

6. /ディレクトリを確認して、data/dbディレクトリがあるかどうかを確認します(ない場合)。

     $ Sudo mkdir -p /data/db

7. mongodを最初に実行するには、mongodbを停止する必要があります。

     $ Sudo systemctl stop mongodb

8.最後に、mongodを実行できます。

     $ Sudo mongod

私が助けたことを願っていますか????

0
Michal S.

cd /etc/apt/sources.list.d

mongodbに関連するファイルを削除する

Sudo apt update

これで解決しました。

0
medunes