Jaki jest najprostszy sposób na rozwiązanie błędów apt-get BADSIG GPG?

129

Często rozwiązuję ten problem i zawsze muszę szukać w Google w celu uzyskania odpowiedzi. Czy ktoś ma stałą naprawę błędów BADSIG apt-get?

W: Błąd GPG: http://download.virtualbox.org lucid Release: Niepoprawne były następujące podpisy: BADSIG 54422A4B98AB5139 Oracle Corporation (klucz podpisywania archiwum VirtualBox)

cmcginty
źródło
Czy używasz apt-cacher-ng?
lfaraone,
4
Ważne jest, aby zrozumieć, do czego służą podpisy GPG w APT, podpis GPG potwierdza, że ​​repozytorium zawiera pakiety dostarczone z zaufanego źródła. Zapewnia zarówno integralność, jak i autentyczność. Za każdym razem, gdy dodajesz nowe repozytorium od jakiegoś dostawcy, musisz dodać jego klucz GPG.
João Pinto,
postępuj zgodnie z przykładem w linku - zamień przykładowy kod w połączonej odpowiedzi na kody BADSIG w swoim pytaniu.
fossfreedom
fossfreedom, nie mogłem zmusić tego rozwiązania do pracy w moim systemie. Utrzymywanie otrzymania „--keyserver” nie zostało zrozumiane. Rozwiązanie oferowane przez dr.Ubuntu poniżej działało dla mnie.
Dirk
Zajrzyj również tutaj askubuntu.com/questions/67594/ ... Myślę, że używane polecenia są poprawne, po prostu nie używasz właściwego klucza.
Bruno Pereira,

Odpowiedzi:

130

Oto (najłatwiejsze) rozwiązanie:

Wpisz następujące polecenia w terminalu:

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

Kredyty: ubuntugeek.com

Edytować:

Jeśli błąd wystąpi ponownie (może po kilku dniach / miesiącach), otwórz Nautilus jako root> przejdź do var/lib/apt> usuń folder „lists.old”> następnie otwórz folder „list” i usuń folder „częściowy”. Teraz ponownie uruchom wyżej wymienione polecenia.

Srinivas Gollapudi
źródło
10
Rozwiązuje to częstszy dla mnie błąd - aktualizację za pośrednictwem połączenia internetowego z serwerem proxy („kafejka” Wi-Fi, która wymaga logowania do sieci), która powoduje uszkodzenie niektórych moich list, jeśli wyloguję się lub zapomnę zalogować się podczas aktualizacji.
płyty grzewcze
3
Jaki byłby rzeczywisty błąd, gdyby odpowiedź qbi nie pomogła, ale to pomogło?
ArtOfCode
Zdarza się również do mnie z powodu: WiFi „cafe”, który wymaga logowania internetową
Postadelmaga
5
Chciałbym, żeby OP sprawdził to jako odpowiedź!
HDave
@ArtOfCode: błąd jest dokładnie taki sam. Ta odpowiedź pomogła mi, ale w sieci można znaleźć tylko metodę wskazaną przez qbi, którą można znaleźć wszędzie w sieci.
0xC0000022L
65

Ważna część komunikatu o błędzie jest pogrubiona :

W: Błąd GPG: http://download.virtualbox.org lucid Release: Niepoprawne były następujące podpisy: BADSIG 54422A4B98AB5139 Oracle Corporation (klucz podpisywania archiwum VirtualBox)

Skopiuj pogrubioną czcionkę, a następnie otwórz terminal i wpisz:

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

tzn. wklej za pomocą SHIFT+ INSnumeru, który skopiowałeś - 54422A4B98AB5139

Musisz podać hasło, klucz zostanie pobrany i zintegrowany.

qbi
źródło
3
mój błąd był związany ze złym repozytorium, nie tylko z brakującym kluczem ... ale twoja odpowiedź jest prawdopodobnie ważna w 99% przypadków
cmcginty
4
+1, ponieważ to całkiem przydatna rzecz, aby wiedzieć, jak to zrobić. Nie rozwiązało to jednak mojego problemu.
Kazark,
21
Czy to faktycznie działało dla kogoś?
Jjed
6
BADSIG różni się od NO_PUBKEY. W przypadku BADSIG poniższe rozwiązanie go rozwiązało. Nie jestem pewien, jak skończyłem w tej sytuacji, ale miałem BADSIG na 5 różnych PPA nawet po zaimportowaniu kluczy.
mfisch
17
Uważam, że może to być bardzo niebezpieczne w sytuacji, gdy ktoś próbuje zrobić coś paskudnego (na przykład mężczyzna w środku ataku). Nie dodawaj tylko kluczy z komunikatów o błędach. Dodawaj tylko klucze, którym ufasz.
gertvdijk
27

Spróbuj usunąć klucz

sudo apt-key del 16126D3A3E5C1192

następnie aktualizując repozytorium

sudo apt-get update

Powinieneś otrzymać NO_PUBKEYbłąd zamiast BADSIGbłędu i

sudo apt-key finger

nie powinien znajdować klucza (nazywany „kluczem automatycznego podpisywania archiwum Ubuntu Extras”)

Teraz dodaj klucz

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

Wynik apt-key fingerpowinien

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 <[email protected]>

Jeśli to nie zadziała, spróbuj

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

Źródło: ten wątek na forum Ubuntu

Portablejim
źródło
Miałem wiele błędów BADSIG, które obejmowały nawet standardowe archiwa Ubuntu. Kiedy nagle usunąłem klucz VirtualBox, wszystkie te błędy zamieniły się w NO_PUBKEY. Następnie, gdy dodałem klucz VirtualBox, błędy zniknęły dla wszystkich innych repozytoriów. Okazało się, że jeden zły klucz spowodował błędy w wielu innych niepowiązanych transakcjach repo.
Mateusz Stachowski,
11

Innym łatwiejszym sposobem rozwiązania błędów BADSIG GPG jest oprogramowanie o nazwie Y PPA manager

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

Kliknij Advanced
wprowadź opis zdjęcia tutaj

A następnie wybierz Fix all GPG Badsig errors
wprowadź opis zdjęcia tutaj

Ashu
źródło
3

Jeśli po dodaniu klucza nadal występuje ten błąd, spróbuj:

  1. Masz katalog pamięci podręcznej apt-cacher-ng i usuń wpis virtualbox:

    cd /var/cache/apt-cacher-ng
    sudo rm -rf download.virtualbox.org
    
cmcginty
źródło
2

Znaleziono inny serwer, którego moglibyśmy użyć:

gpg --keyserver hkp://subkeys.pgp.net --recv-keys [YOURKEYINQUESTION]
gpg --armor --export [YOURKEYINQUESTION] | sudo apt-key add -
Jacek
źródło