web-dev-qa-db-de.com

Wie behebe ich fehlende GPG-Schlüssel?

Ich habe gerade Ubuntu 12.04 installiert und ein Repo hinzugefügt, und als ich apt-get update machte, fehlte mir der gpg-Schlüssel.

Der folgende Befehl scheint bei mir nicht zu funktionieren:

apt-get update 2> /tmp/keymissing; for key in $(grep "NO_PUBKEY" /tmp/keymissing |sed "s/.*NO_PUBKEY //"); do echo -e "\nProcessing key: $key"; gpg --keyserver subkeys.pgp.net --recv $key && Sudo gpg --export --armor $key | apt-key add -; done

Wie kann das Problem behoben werden?

152
Fih

Ich mochte diese Lösung, lade die fehlenden Schlüssel erneut vom Ubuntu-Schlüsselserver herunter.

Für Ubuntu

In meinem Fall

 Reading package lists... Done  
 W: GPG error: http://ppa.launchpad.net precise 
 Release: The following signatures couldn't be verified because the public key is not available: 
 NO_PUBKEY 2EA8F35793D8809A

Hier ist der Befehl zum Hinzufügen des fehlenden Schlüssels, der in der Fehlermeldung erwähnt wird.

Sudo apt-key adv --keyserver ha.pool.sks-keyservers.net --recv-keys 2EA8F35793D8809A

Also nehme ich den fehlenden Schlüssel 2EA8F35793D8809A und fordere den keyserver.ubuntu.com auf, ihn zur Liste der Schlüssel hinzuzufügen, die ich in apt habe.

Für Linux Mint
Dein Schlüsselserver ist etwas anders keyserver.linuxmint.com

Sudo apt-key adv --recv-key --keyserver keyserver.linuxmint.com "missing key"

Alternative Schlüsselserver zum Ausprobieren
keyserver.ubuntu.com

221
nelaaro

Es gibt eine Software namens Y PPA manager. Sie kann helfen, GPG-Schlüsselfehler zu beheben.
Y PPA-Manager

Installieren -

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

Sobald Sie es installiert haben, starten Sie es, gehen Sie zu advance und wählen Sie "Alle fehlenden GPG-Schlüssel importieren"

21
Ashu

Der automatische Download mit apt-key adv --recv-keys funktioniert möglicherweise nicht hinter einer Firewall.

Öffnen Sie in diesem Fall die Webseite von buntu Key Server in Ihrem Webbrowser und suchen Sie nach der Zeichenfolge 0x<hexadecimal code of your missing key>.

Öffnen Sie den Link im Abschnitt Pub . Speichern Sie den Schlüsselinhalt (von -----BEGIN PGP PUBLIC KEY BLOCK----- bis -----END PGP PUBLIC KEY BLOCK-----) als Datei.

Dann renne:

Sudo apt-key add <file-with-saved-key>

Quelle: http://opensourceforgeeks.blogspot.in/2013/04/w-gpg-error-httpppalaunchpadnet-precise.html

14
Melebius

geben Sie zuerst den folgenden Befehl in das Terminal ein

 Sudo rm /var/lib/apt/lists/* -vf

aktualisieren Sie dann Ihr System, indem Sie den folgenden Befehl in das Terminal eingeben

 Sudo apt-get update && Sudo apt-get upgrade

danach sollte es keine fehler geben und alles sollte gut funktionieren.

12
Bharat

Für Ubuntu 12.04 Precise: Permanente Lösung

zu dieser Fehlermeldung, die nach dem Hinzufügen eines neuen Repositorys und dem Aktualisieren der Repository-Liste auftritt. Dies liegt an einem Server, dessen Adresse nicht mehr gültig ist. Ändern Sie einfach die Adresse in eine gute.

  1. Öffnen Sie die Datei ~/.gnupg/gpg.conf mit einem Texteditor.

    Im Terminal: gedit ~/.gnupg/gpg.conf

  2. suchen Sie dann in dieser Datei die folgende fette Linie (116. Linie) (die standardmäßig wie folgt lauten sollte):

    [...]
    Keyserver hkp: //keys.gnupg.net
    # keyserver mailto: [email protected]
    # keyserver ldap: //keyserver.pgp.com

  3. fügen Sie dann die folgende fette Linie hinzu, um das folgende Ergebnis zu erhalten:

    (Fügen Sie der zweiten Zeile ein # hinzu, um die alte Adresse zu kommentieren.)

    [...]
    keyserver http://keyserver.ubuntu.com
    # keyserver hkp: //keys.gnupg.net
    # keyserver mailto: [email protected]
    # keyserver ldap: //keyserver.pgp.com

  4. Speichern Sie die Datei und versuchen Sie erneut zu aktualisieren:

    Im Terminal: Sudo apt-get update

9
blitzter47

Basierend auf der Antwort von nelaar:

Sudo apt-get update 2>&1 1>/dev/null | sed -ne 's/.*NO_PUBKEY //p' |
while read key; do
    echo 'Processing key:' "$key"
    Sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys "$key"
done

Das Skript speichert alle Fehler in einer temporären Datei, durchläuft sie dann und importiert die fehlenden Schlüssel.

7
Zafarella

Der einfachste Weg ist mit Y PPA MAnager

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

Öffnen Sie Y PPA Manager From Dash

enter image description here

Geben Sie Ihr Admin-Passwort ein

enter image description here

Doppelklicken Sie auf Erweiterte Option

enter image description here

Klicken Sie auf Versuch, alle fehlenden GPG-Schlüssel zu importieren

enter image description here

Klicken Sie auf Ok, um das Problem zu beheben

6
Qasim

Geben Sie zuerst den folgenden Befehl in das Terminal ein

Sudo rm /var/lib/apt/lists/* -vf

aktualisieren Sie dann Ihr System, indem Sie den folgenden Befehl in das Terminal eingeben

Sudo apt-get update && Sudo apt-get upgrade

danach sollte es keine fehler geben und alles sollte gut funktionieren.

4
DaniilPiter

Was für mich funktioniert hat war, zuerst den Schlüssel zu löschen und dann neu zu installieren. Um das zu erreichen, habe ich folgendes getan:

[email protected] > ~: Sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 630239CC130E1A7FD81A27B140976EAF437D05B5

löschen mit

[email protected] > ~: Sudo apt-key del 630239CC130E1A7FD81A27B140976EAF437D05B5

Installieren Sie dann erneut, indem Sie Folgendes eingeben

[email protected] > ~: Sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 630239CC130E1A7FD81A27B140976EAF437D05B5
2
QuixRhyno

Ich wollte solche Fehler automatisch in einem Bash-Skript beheben. Für alle Interessierten sollte dies der Trick sein:

Sudo apt-get update 2> /tmp/keymissing
if [ -f /tmp/keymissing ]
then
    for key in $(grep "NO_PUBKEY" /tmp/keymissing |sed "s/.*NO_PUBKEY //")
        do 
        echo -e "\nProcessing key: $key"
        Sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $key
        Sudo apt-get update
    done
    rm /tmp/keymissing
fi
1
user2304170

Ich bin auf dasselbe Problem gestoßen, als ich ein ppa ( ppa:nathandyer/vocal-stable ) hinzufügte, wodurch meine Repositorys beschädigt wurden. Ich wurde vom Autor von Web Upd8 darüber geführt, wie ich versuchen kann, dies zu beheben. Hier sind seine Schritte, die mir geholfen haben.

Sichern Sie Ihre _.gpg_ Schlüssel für den Fall, dass etwas schief geht.

Erstellen wir einen Ordner, in dem wir unser Backup ablegen.

  • _mkdir ~/gpg-backups_

    Dadurch werden alle Dateien im Ordner _/etc/apt/trusted.gpg.d/_ gesichert.

  • _Sudo cp /etc/apt/trusted.gpg.d/*.* ~/gpg-backups/_

Jetzt werden wir alle _.gpg_ Schlüssel entfernen.

  • _Sudo rm /etc/apt/trusted.gpg.d/_

  • _Sudo cp /etc/apt/trustdb.gpg ~/gpg-backups/_

  • _Sudo rm /etc/apt/trustdb.gpg_

klicken Sie unter "Software & Updates" auf der Registerkarte "Authentifizierung" auf "Standardeinstellungen wiederherstellen"

Installieren Sie den y-ppa Manager, um alle fehlenden GPG-Schlüssel zu importieren

_Sudo add-apt-repository ppa:webupd8team/y-ppa-manager
Sudo apt-get update
Sudo apt-get install y-ppa-manager
_

Referenz :

1
blade19899

Wenn Sie so etwas haben:

# aptitude update
...
Ign http://archive.canonical.com wily/partner Translation-en_US
Fetched 422 kB in 3s (130 kB/s)
W: GPG error: http://ubuntu.volia.net wily InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 40976EAF437D05B5 NO_PUBKEY 3B4FE6ACC0B21F32

Zunächst einmal versuchen:

# Sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32

Die Ausgabe des letzten Befehls kann sein:

gpg: keyblock resource `/etc/apt/trusted.gpg.d/webupd8team_ubuntu_experiments.gpg': resource limit
gpg: keyblock resource `/etc/apt/trusted.gpg.d/webupd8team_ubuntu_gthumb.gpg': resource limit

Sie müssen also zu /etc/apt/trusted.gpg.d/ gehen und nicht verwendete Schlüssel entfernen und dann apt-key adv und aptitude update wiederholen.

0
ipeacocks

wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | Sudo apt-key add - ausführen

0
towfiqpiash