Apa cara termudah untuk menyelesaikan kesalahan apt-get BADSIG GPG?


129

Saya sering mengatasi masalah ini, dan selalu harus mencari jawaban di google. Adakah yang memiliki perbaikan permanen untuk kesalahan BADSIG apt-get?

W: Kesalahan GPG: http://download.virtualbox.org lucid Release: Tanda tangan berikut tidak valid: BADSIG 54422A4B98AB5139 Oracle Corporation (kunci penandatanganan arsip VirtualBox)


Apakah Anda menggunakan apt-cacher-ng?
lfaraone

4
Penting bagi Anda untuk memahami apa tanda tangan GPG di APT digunakan, tanda tangan GPG memvalidasi bahwa repositori berisi paket yang disediakan dari sumber tepercaya. Ini memastikan integritas dan keaslian. Setiap kali Anda menambahkan repositori baru dari beberapa penyedia, Anda perlu menambahkan kunci GPG itu.
João Pinto

ikuti contoh di tautan - ganti kode contoh dalam jawaban yang ditautkan dengan kode BADSIG dalam pertanyaan Anda.
fossfreedom

fossfreedom, saya tidak bisa mendapatkan solusi untuk bekerja pada sistem saya. Terus mendapatkan "--keyserver" tidak dipahami. Solusi yang ditawarkan oleh Dr.Ubuntu di bawah ini bekerja untuk saya.
Dirk

Lihat juga di sini askubuntu.com/questions/67594/... Saya pikir perintah yang Anda gunakan sudah benar, Anda tidak menggunakan kunci yang benar.
Bruno Pereira

Jawaban:


130

Inilah solusi (termudah):

Ketik perintah berikut di Terminal:

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

Kredit: ubuntugeek.com

Sunting:

Jika kesalahan terjadi lagi (mungkin setelah beberapa hari / bulan), buka Nautilus sebagai root> navigasikan ke var/lib/apt> hapus folder "lists.old"> kemudian buka folder "daftar" dan hapus folder "sebagian". Sekarang, jalankan kembali perintah yang disebutkan di atas.


10
Ini memecahkan kesalahan yang lebih umum bagi saya - memperbarui melalui koneksi Internet dengan proxy (WiFi "cafe" yang memerlukan logon web) yang merusak beberapa daftar saya jika saya logout atau lupa untuk logon saat pembaruan.
Hobs

3
Apa kesalahan sebenarnya jika jawaban qbi tidak membantu tetapi ini tidak?
ArtOfCode

Itu juga terjadi pada saya karena: "kafe" WiFi yang membutuhkan logon web
Postadelmaga

5
Saya berharap OP akan memeriksa ini sebagai jawabannya!
HDave

@ArtOfCode: kesalahannya persis sama. Jawaban ini membantu saya, tetapi di web Anda hanya menemukan metode yang ditunjukkan qbi dan Anda bisa temukan di mana saja di web.
0xC0000022L

65

Bagian penting dari pesan kesalahan Anda adalah sebagai berikut dalam huruf tebal :

W: Kesalahan GPG: http://download.virtualbox.org lucid Release: Tanda tangan berikut tidak valid: BADSIG 54422A4B98AB5139 Oracle Corporation (kunci penandatanganan arsip VirtualBox)

Salin barang-barang dengan huruf tebal dan kemudian buka terminal dan ketik:

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 54422A4B98AB5139

yaitu menempel menggunakan SHIFT+ INSnomor yang telah Anda salin - 54422A4B98AB5139

Anda harus memasukkan kata sandi, kunci akan diunduh dan diintegrasikan.


3
kesalahan saya terkait dengan repo yang buruk, bukan hanya kunci yang hilang ... namun jawaban Anda kemungkinan berlaku untuk 99% kasus
cmcginty

4
Memberi +1 karena itu adalah hal yang cukup berguna untuk mengetahui caranya. Namun, itu tidak memperbaiki masalah saya.
Kazark

21
Apakah ini benar-benar bekerja untuk siapa saja?
Jjed

6
BADSIG berbeda dari NO_PUBKEY. Untuk BADSIG jawaban di bawah ini menyelesaikannya. Saya tidak yakin bagaimana saya berakhir dalam situasi ini, tetapi saya memiliki BADSIG pada 5 PPA yang berbeda bahkan setelah mengimpor kunci.
mfisch

17
Saya percaya ini bisa sangat berbahaya dalam situasi di mana seseorang mencoba melakukan sesuatu yang jahat (pria di tengah serangan misalnya). Jangan hanya menambahkan kunci dari pesan kesalahan. Hanya tambahkan kunci yang Anda percayai.
gertvdijk

27

Coba hapus kuncinya

sudo apt-key del 16126D3A3E5C1192

kemudian memperbarui repositori

sudo apt-get update

Anda seharusnya mendapatkan NO_PUBKEYkesalahan alih-alih BADSIGkesalahan dan

sudo apt-key finger

seharusnya tidak menemukan kunci (disebut "Kunci Penanda Otomatis Arsip Ekstra Ubuntu")

Sekarang tambahkan kuncinya

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 16126D3A3E5C1192

Hasil yang apt-key fingerseharusnya

pub   1024D/3E5C1192 2010-09-20
      Key fingerprint = C474 15DF F48C 0964 5B78  6094 1612 6D3A 3E5C 1192
uid                  Ubuntu Extras Archive Automatic Signing Key <ftpmaster@ubuntu.com>

Jika itu tidak berhasil, coba

apt-get clean            # Remove cached packages
cd /var/lib/apt
mv lists lists.old       # Backup mirror info
mkdir -p lists/partial   # Recreate directory structure
apt-get clean
apt-get update           # Fetch mirror info

Sumber: utas forum ubuntu ini


Saya memiliki beberapa kesalahan BADSIG yang termasuk bahkan arsip standar Ubuntu. Ketika saya menghapus kunci VirtualBox tiba-tiba semua kesalahan itu berubah menjadi NO_PUBKEY. Lalu ketika saya menambahkan kunci VirtualBox kesalahannya hilang untuk semua repo lainnya. Jadi ternyata satu kunci buruk menghasilkan kesalahan untuk banyak repo lain yang tidak terkait.
Mateusz Stachowski

11

Cara lain yang lebih mudah untuk menyelesaikan kesalahan BADSIG GPG adalah melalui perangkat lunak yang disebut Y PPA manager

sudo add-apt-repository ppa: webupd8team / y-ppa-manager
sudo apt-get update
sudo apt-get install y-ppa-manager

Klik Advanced
masukkan deskripsi gambar di sini

Dan kemudian pilih Fix all GPG Badsig errors
masukkan deskripsi gambar di sini


3

Jika Anda masih memiliki kesalahan ini setelah menambahkan kunci coba:

  1. pergi direktori cache apt-cacher-ng Anda, dan hapus entri virtualbox:

    cd /var/cache/apt-cacher-ng
    sudo rm -rf download.virtualbox.org
    

2

Menemukan server lain yang bisa kita gunakan:

gpg --keyserver hkp://subkeys.pgp.net --recv-keys [YOURKEYINQUESTION]
gpg --armor --export [YOURKEYINQUESTION] | sudo apt-key add -
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.