“GPG hatası: Yayın: Aşağıdaki imzalar geçersizdi: BADSIG”


88

Bu komutu Terminalde çalıştırdım:

sudo apt-get update

Güncelleme aşağıdaki hata raporuyla sona erer:

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  

Bu ne anlama geliyor ve neden oluyor?


4
12.04'ü ilk kurduğumda da benzer bir sorun gördüm. Ondan sonra "Yazılım Kaynakları" nı yazılım yöneticisinden Hindistan’dan başka bir sunucuya değiştirdim. Şimdi bu sorunu göremiyorum. Hindistan sunucusunu kullanıyorsanız, değiştirin ve bize bildirin.
Abhijeet

Thanx Abhijeet. Ben bir Hintliyim ama burada Katar'da kalıyorum. Sunucuyu Suudi Arabistan olarak değiştirdim.Ama aynı sonuç.
beeju

Yanıtlar:


90

Bunu dene:

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
partialAlt dizini oluşturmanıza gerek yok . sudo apt-get updateBunu kendisi yapacak.
Byte Komutanı

9
Yukarıdakileri yaptıktan sonra hala bu hatayı alıyorum: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
Mona Jalal

Sorulan soruyu cevaplamaya değebilir (ve daha fazla oy kazanma ;-)).
Witold Kaczurba 19:18

ikinci adımda hatayla karşılaşıldı:mv: cannot move '/var/lib/apt/lists' to '/tmp/lists': Directory not empty
İnternet Kullanıcısı

Bunun tam olarak ne yaptığını detaylandırabilir misin? Teşekkür ederim,
Hendrik

64

Bu mesaj görüntüleniyor çünkü bu havuzun gpg tuşu apt-key veritabanınızda yok.

Anahtarı almak için bir terminal açın ve bu komutları girin.

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

pgp anahtarları çoğunlukla birkaç anahtar deposunda dağıtılır. Ubuntu ile ilgili anahtarlar genellikle içinde bulunur keyserver.ubuntu.com. Ancak bu başarısız olursa alternatifleri kullanabilirsiniz. Sevmek -

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

Alfanümerik parçayı belirli bir tuşla değiştirmeniz gerekir. Anahtarın güvendiğiniz biri olduğundan emin olun . Bu anahtarın bulunduğu herhangi bir depo, herhangi bir paketi uyarıda bulunmadan kurabilir.

Yukarıdakiler başarılı olursa aşağıdaki çıktıları göreceksiniz

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

Ardından bu komutu çalıştırın:

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

Sonrasındaki -işarete dikkat edin add.

Ardından sudo apt-get update, bundan sonra böyle bir mesajınız olmaz.


1
Merhaba @ anwar, güvendiğim anahtarı nereden / nasıl alabilirim?
Minnie Shi

1
@MinnieShi Anahtar, hata mesajının kendisinde bulunurThe following signatures were invalid: BADSIG 16126D3A3E5C1192
Kalyan Raghu

1
apt-key addKomutun "Tamam" döndürmesi gerektiğini unutmayın .
Coil

Harika, kabul edilen cevap olmalı! Teşekkürler.
Jacob

13

Bunu sadece yaparken buldum

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

benim için çalıştı.


/ Var / lib / apt / listeleri izninin alabileceği her şeyi korumak için sudo rm -rf / var / lib / apt / listeleri / * && sudo mkdir -p / var / lib / apt / listeleri kullanın
131

1
partialAlt dizini oluşturmanıza gerek yok . sudo apt-get updateBunu kendisi yapacak.
Byte Komutanı

9

Komutumu, kullandığınız PPA'ların tüm GPG anahtarlarını otomatik olarak almak için deneyebilirsiniz: smartupdate.sh .

Bu başlatacak apt-get update, ardından bulundu GPG imzalar için anahtarları tüm GPG hataları bulmak ve almak. Senin durumunda, sadece başlayacak

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

ancak birkaç imzasız PPA eklediğinizde, GPG anahtarlarını manuel olarak eklemek sıkıcı hale gelir. :)


6

Aşağıdaki komutlar benim için problemi çözdü:

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

1
partialAlt dizini oluşturmanıza gerek yok . sudo apt-get updateBunu kendisi yapacak.
Byte Komutanı

4

Ben de benzer bir hatayla karşılaştım. Ancak bunun yerine PostgreSQL deposunu BADSIGaldım 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

Çözüm mükemmel açıklanan burada ama bu çözmek için ne yaptığını geçerli:

$ 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 -

Ve şimdi $ sudo apt-get updatemükemmel çalışacak!


1

Bu ipucu ( actionparsnip'ten ) benim için çalıştı:

Deneyin:

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

Bulunan:
https://answers.launchpad.net/ubuntu/+source/update-manager/+question/194077


1

Bu, bir HTTP proxy’sinin önbelleğe alınmasıyla ilgili bir sorun olabilir. Benim gibi rota boyunca bunlardan birisine sahipseniz, Apt'tan önbelleği geçici olarak atlamasını istemenizi isteyebilirsiniz:

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

-2

Bunu launchpad-getkeysdüzeltmek için kullanabilirsiniz . Bir terminal açın ve şunu girin:

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

Sonra

sudo apt-get update
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.