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をインストールする方法があり、問題なく作業できます。
最初にmongodbをアンインストールする必要があります。次を使用できます。
Sudo apt-get purge mongodb-org*
この後、次のコマンドを使用してmongodbをインストールします。
Sudo apt-get install mongodb
そして、更新:
Sudo apt-get update
Mongodbのインストールが完了しました。以下のコマンドを使用して確認できます。
mongo --version
これは、現在のところ、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によると、これはサポートされておらず、おそらく最新バージョンをインストールしません。
ここでチャイムしたいだけです。私は、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 remove
、apt autoremove
、およびapt purge
システムを修正します。
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 --nodb
にMongoDB Shell version v4.0.4
と表示されます
ここから、設定が完了しました。mongodbのインストールをお楽しみください。このスタレーションは少し複雑ですが、この方法により、mongodbのバージョンを簡単に制御し、必要に応じて使用できます。
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
この優れた回答に基づいて: 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ソースリストに追加された後に実行されるインストールコマンド。
実行Sudo apt autoremove
および再インストールmongodb.
mongod
コマンドを使用する最も簡単な方法。 $ Sudo apt update
$ Sudo apt install -y mongodb
$ 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
port 27017
でMongoDBへのアクセスを許可するには $ Sudo ufw allow 27017
$ 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.
/
ディレクトリを確認して、data/db
ディレクトリがあるかどうかを確認します(ない場合)。 $ Sudo mkdir -p /data/db
mongod
を最初に実行するには、mongodbを停止する必要があります。 $ Sudo systemctl stop mongodb
mongod
を実行できます。 $ Sudo mongod
cd /etc/apt/sources.list.d
mongodbに関連するファイルを削除する
Sudo apt update
これで解決しました。