以下のコマンドを使用してubuntu 16.04にMongoDB 3.2をインストールするときにも、この問題に直面しました。以下のソリューションは、MongoDBのv3.2インストールに関する質問として提供されています
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
echo "deb http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
sudo apt-get update
上記の更新コマンドを実行した後、私は次の警告を見つけました
W: GPG error: http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 Release: The following signatures were invalid: KEYEXPIRED 1507497109
W: The repository 'http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 Release' is not signed.
N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use.
N: See apt-secure(8) manpage for repository creation and user configuration details.
以下のコマンドを使用してすべてのキーを一覧表示する詳細な調査について
sudo apt-key list
現在のキーが2017-10-08に期限切れであることを示しています
pub 4096R/EA312927 2015-10-09 [expired: 2017-10-08]
uid MongoDB 3.2 Release Signing Key <packaging@mongodb.com>
これは、MongoDBの現在の安定リリースが現在(3.4.9)であるため、理にかなっています。
最初に問題を修正するために、小さなクリーンアップを行います(オプション)
追加された古いキーを削除します
sudo apt-key list //すべてのキーを一覧表示します
sudo apt-key del EA312927 //削除するキーのuidを見つける
apt-keyリスト| grep Mongodb //削除されたかどうかを確認する
次に、/ etc / apt / sources.list.dに追加されたMongoDBリポジトリを削除します
sudo rm /etc/apt/sources.list.d/mongodb*.list
次のコマンドを使用して、MongoDB(3.4.9)の最新の安定バージョンをインストールします。
Ubuntu Package Managerが使用する公開鍵をインポートする
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
mongoDBが現在のリポジトリを取得するためのファイルリストを作成する
echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-3.4.list
MongoDBをインストールする
sudo apt-get update
sudo apt-get install mongodb-org