「GPGエラー:リリース:次の署名は無効でした:BADSIG」


88

ターミナルでこのコマンドを実行しました:

sudo apt-get update

更新は次のエラーレポートで終了します。

W: A error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://extras.ubuntu.com precise Release: The following signatures were invalid: BADSIG 16126D3A3E5C1192 Ubuntu Extras Archive Automatic Signing Key <ftpmaster@ubuntu.com>

W: GPG error: http://ppa.launchpad.net precise Release: The following signatures were invalid: BADSIG 4C1CBC1B69B0E2F4 Launchpad PPA for Jonathan French
W: Failed to fetch http://extras.ubuntu.com/ubuntu/dists/precise/Release  

これは何を意味し、なぜ起こっているのですか?


4
12.04を最初にインストールしたときに、同様の問題が発生しました。その後、「ソフトウェアソース」をインドのソフトウェアマネージャーから別のサーバーに変更しました。今、私はこの問題を見ていません。インドのサーバーを使用している場合は、変更してお知らせください。
Abhijeet

アビジートありがとう。私はインド人ですが、ここカタールにとどまり、サーバーをサウジアラビアに変更しましたが、同じ結果になりました。
ビージュ

回答:


90

これを試して:

sudo apt-get clean
sudo mv /var/lib/apt/lists /tmp
sudo mkdir -p /var/lib/apt/lists/partial
sudo apt-get clean
sudo apt-get update

4
partialサブディレクトリを作成する必要はありません。sudo apt-get updateそれ自体を行います。
バイトコマンダー

9
:上記を行った後、私はまだこのエラーが出るReading package lists... Done W: GPG error: http://developer.download.nvidia.com Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY F60F4B3D7FA2AF80
モナジャラル

尋ねられた質問に答える価値があるかもしれません(そして、より多くの賛成票を獲得します;-))。
ウィトールカチュルバ

2番目のステップでエラーが発生しました:mv: cannot move '/var/lib/apt/lists' to '/tmp/lists': Directory not empty
インターネットユーザー

これが何をするのか正確に説明していただけますか?、ありがとう
ヘンドリック

64

このメッセージは、そのリポジトリのgpgキーがapt-keyデータベースにないために表示されています。

キーをインポートするには、ターミナルを開いて次のコマンドを入力します

gpg --keyserver keyserver.ubuntu.com --recv-keys 16126D3A3E5C1192 

pgpキーは、主にいくつかのキーストアで配布されます。Ubuntu関連のキーは通常にありkeyserver.ubuntu.comます。しかし、それが失敗した場合は、代替手段を使用できます。好む -

gpg --keyserver hkp://subkeys.pgp.net --recv-keys 16126D3A3E5C1192

英数字部分を特定のキーに置き換える必要があります。キーが信頼できるものであることを確認してください。このキーを持つリポジトリは、警告なしでパッケージをインストールできます。

上記が成功した場合、次の出力が表示されます。

gpg: Total number processed: 1
gpg:               imported: 1

次に、次のコマンドを実行します。

gpg --export --armor 16126D3A3E5C1192 | sudo apt-key add - 

-後の記号に注意してくださいadd

その後sudo apt-get update、このようなメッセージは表示されなくなります。


1
Hi @ anwarどこで/どのように信頼できるキーを取得できますか?
ミニー市

1
@MinnieShiキーはエラーメッセージ自体に存在しますThe following signatures were invalid: BADSIG 16126D3A3E5C1192
Kalyan Raghu

1
apt-key addコマンドは「OK」を返すことに注意してください。
コイル

素晴らしい、受け入れられた答えであるべきです!ありがとう。
ジェイコブ

13

やっていることがわかった

sudo rm -rf /var/lib/apt/lists
sudo mkdir /var/lib/apt/lists

私のために働いた。


使用sudoをRM -rfに/ var / lib / apt /リスト/ * && sudoのます。mkdir -pている可能性がありますどのように/ var / lib / apt /リスト許可維持するために/ var / lib / apt /リスト
131

1
partialサブディレクトリを作成する必要はありません。sudo apt-get updateそれ自体を行います。
バイトコマンダー

9

私のスクリプトを使用して、使用するPPAのすべてのGPGキーを自動的に受信できます:smartupdate.sh

起動しapt-get update、すべてのGPGエラーを見つけ、見つかったGPG署名のキーを受け取ります。あなたの場合、それはちょうど起動します

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4C1CBC1B69B0E2F4

しかし、いくつかの未署名のPPAを追加すると、GPGキーを手動で追加するのは退屈になります。:)


6

次のコマンドで問題を解決できました。

sudo -i
apt-get clean
cd /var/lib/apt
mv lists lists.old
mkdir -p lists/partial
apt-get clean
apt-get update

1
partialサブディレクトリを作成する必要はありません。sudo apt-get updateそれ自体を行います。
バイトコマンダー

4

同様のエラーが発生しました。しかし、PostgreSQLリポジトリBADSIGを取得KEYEXPIREDする代わりに:

W: A error occurred during the signature verification.
  The repository is not updated and the previous index files will be used.
  GPG error: http://apt.postgresql.org precise-pgdg Release:
  The following signatures were invalid: KEYEXPIRED 1381654177

ソリューションはここに完全に記述されてますが、これは私がそれを解決するためにしたことです:

$ sudo apt-key list | grep -B1 PostgreSQL
$ sudo apt-key del ACCC4CF8
$ wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

そして今、$ sudo apt-get update完璧に動作します!


1

このアクションactionparsnipから)は私のために働いた:

試してください:

sudo fuser -vvv /var/lib/dpkg/lock
sudo rm /var/lib/apt/lists/lock
sudo cp -arf /var/lib/dpkg /var/lib/dpkg.backup
sudo cp /var/lib/dpkg/status-old /var/lib/dpkg/status
sudo cp /var/lib/dpkg/available-old /var/lib/dpkg/available
sudo rm -rf /var/lib/dpkg/updates/*
sudo rm -rf /var/lib/apt/lists
sudo rm /var/cache/apt/*.bin
sudo mkdir /var/lib/apt/lists
sudo mkdir /var/lib/apt/lists/partial
LANG=C;sudo apt-get clean
LANG=C;sudo apt-get autoclean
LANG=C;sudo apt-get --purge autoremove
LANG=C;sudo apt-get update -o APT::Cache-Limit=25165824
sudo dpkg --clear-avail
sudo dpkg --configure -a
LANG=C;sudo apt-get -f install
LANG=C;sudo apt-get --fix-missing install
LANG=C;sudo apt-get update -o APT::Cache-Limit=25165824 && sudo apt-get dist-upgrade

で発見:https :
//answers.launchpad.net/ubuntu/+source/update-manager/+question/194077


1

これは、HTTPプロキシのキャッシュの問題が原因である可能性があります。私のようなルートに沿ってこれらのいずれかがある場合、Aptに一時的にキャッシュを回避するように依頼することができます。

sudo apt-get update -o Acquire::http::No-Cache=True

-2

launchpad-getkeysこれを修正するために使用できます。ターミナルを開き、次を入力します。

sudo apt-get install launchpad-getkeys
sudo launchpad-getkeys

それから

sudo apt-get update
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.