公開キー検索エラー
MongoDB Community Edition のインストールのImport the public key used by the package management systemステップ中に発生します。
gpg: no valid OpenPGP data found.解決法
ドキュメントに記載されているとおりにコマンドを正確にコピーします。操作はOK の応答を返します。
MongoDB公開 GPG キーがシステムに存在していることを確認します。
sudo apt-key list期待される出力は、次のようになります。
/etc/apt/trusted.gpg--------------------pub rsa4096 2018-04-18 [SC] [expires: 2023-04-17] E162 F504 A20C DF15 827F 718D 4B7C 549A 058F 8B6Buid [ unknown] MongoDB 8.0 Release Signing Key <packaging@mongodb.com>sudo apt update Errors
MongoDB Community Edition のインストール手順の中で sudo apt update を実行中後に発生します。多くの場合、 MongoDB公開 GPG キーの欠落が原因です。
W: GPG error: https://repo.mongodb.org/apt/ubuntu <release>/mongodb-org/8.0 Release: \ The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 4B7C549A058F8B6BE: The repository 'https://repo.mongodb.org/apt/ubuntu <release>/mongodb-org/8.0 Release' \ is not signed.N: Updating from such a repository can't be done securely, and is therefore disabled by default.N: See apt-secure(8) manpage for repository creation and user configuration details.解決法
MongoDB Community Edition のインストール で Import the public key used by the package management system ステップを繰り返します。ドキュメントに記載されているとおりにコマンドとキーを正確にコピーします。
キーを確認します。
sudo apt-key list期待される出力:
--------------------pub rsa4096 2018-04-18 [SC] [expires: 2023-04-17] E162 F504 A20C DF15 827F 718D 4B7C 549A 058F 8B6Buid [ unknown] MongoDB 8.0 Release Signing Key <packaging@mongodb.com>sudo apt install -y mongodb-org Errors
MongoDB Community Edition のインストール 手順のステップsudo apt install -y mongodb-org Create a list file for MongoDBで を実行中後に発生します。多くの場合、/etc/apt/sources.list.d/mongodb-org-8.0.listファイル の欠落または誤って構成が原因で発生します。
Reading package lists... DoneBuilding dependency treeReading state information... DoneE: Unable to locate package mongodb-org解決法
ファイルの内容を確認します。
cat /etc/apt/sources.list.d/mongodb-org-8.0.listコンテンツがUbuntuバージョンのドキュメントと一致しない場合は、ファイルを削除し Create a list file for MongoDB ステップを繰り返します。
ファイルが存在しない場合、ステップ中に作成します。
リポジトリを更新し、インストールを再試行します。
sudo apt updatesudo apt install -y mongodb-org
dpkg-deb: error パッケージ競合
sudo apt install -y mongodb-org ステップ中にMongoDB Community Edition のインストール手順で発生します。多くの場合、すでにインストールされているUbuntu mongodbパッケージとの競合が原因で発生します。
dpkg: error processing archive /var/cache/apt/archives/mongodb-org-server_8.0.0_amd64.deb (--unpack):trying to overwrite '/usr/bin/mongod', which is also in package mongodb-server-core 1:3.6.3-0ubuntu1解決法
競合を確認します。
sudo apt list --installed | grep mongomongodb/bionic,now 1:3.6.3-0ubuntu1 amd64 [installed]mongodb-clients/bionic,now 1:3.6.3-0ubuntu1 amd64 [installed,automatic]mongodb-server/bionic,bionic,now 1:3.6.3-0ubuntu1 all [installed,automatic]mongodb-server-core/bionic,now 1:3.6.3-0ubuntu1 amd64 [installed,automatic]出力にこのようなUbuntuパッケージが表示されている場合は、それらを削除します。
sudo apt remove mongodbsudo apt purge mongodbsudo apt autoremove注意
sudo apt purge mongodb はデフォルトの構成ファイルを削除します。変更された構成ファイルを保持するには、消去する前に別のディレクトリ(例: /home/your-user-name)にコピーします。
混合パッケージの場合:
出力に mongodb-org パッケージと mongodb パッケージの両方が表示される場合は、まず mongodb-org パッケージを**除く**し、次に mongodb パッケージを**除く**します。MongoDB関連のパッケージをすべてクリアした後、MongoDB Community Edition のインストールを再試行してください。
mongod ソケット エラー
mongod の起動時に発生します。多くの場合、構成されたポートを使用する別のプロセス(通常は別のmongod)が原因で発生します。
Socket is already in useFailed to unlink socket file解決法
プロセスを特定します。
次の例では、ss を使用して、LISTEN(-l)状態と各ソケット(-p)で開いているすべての TCP(-t)と UDP(-u)ソケットを一覧表示します。サービス名またはホスト名(-n):
sudo ss -tulpnポート 27017 上の mongod を示す出力例:
Netid State Local Address:Portudp UNCONN 127.0.0.53%lo:53 users:(("systemd-resolve",pid=663,fd=12))udp UNCONN 10.1.16.87%enp0s3:68 users:(("systemd-network",pid=652,fd=15))tcp LISTEN 127.0.0.53%lo:53 users:(("systemd-resolve",pid=663,fd=13))tcp LISTEN 0.0.0.0:22 users:(("sshd",pid=819,fd=3))tcp LISTEN 192.168.1.15:27017 users:(("mongod",pid=10027,fd=12))tcp LISTEN 127.0.0.1:27017 users:(("mongod",pid=10027,fd=11))tcp LISTEN ::]:22 users:(("sshd",pid=819,fd=4))次のいずれかを実行できます。
既存のプロセスをシャットダウンする
データディレクトリ エラー
mongod プロセスログで発生します。多くの場合、データディレクトリが存在しない、または mongod からアクセスできないことが原因で発生します。
Data directory ... not found
Attempted to create lock file on a read-only directory: ...サービスとして起動する場合(sudo systemctl start mongod または sudo service mongod start)、これはを平均場合があります。
ターミナルから起動する場合、これはを平均場合があります。
ディレクトリが存在しない場合
解決法
原因に応じて、データディレクトリを作成するか、適切な権限と所有権を設定します。
ディレクトリを作成します。
storage.dbPath構成ファイルで--dbpathを使用するか、コマンドラインで を使用してデータディレクトリを指定します。デフォルトのパスを設定します。
aptパッケージマネージャーのインストール:デフォルトの/etc/mongod.conf構成ファイルでは、storage.dbPathから/var/lib/mongodbに設定されています。
データディレクトリが存在することを確認するか、
mongodを起動する前にmkdirを使用してディレクトリを作成します。