GNU/Linux >> Tutoriales Linux >  >> Debian

Solucione los errores de repositorio aptos de la clave GPG faltantes (NO_PUBKEY)

Es posible que vea un error con la clave pública GPG faltante ("NO_PUBKEY") cuando se ejecuta en Debian, Ubuntu o Linux Mint apt update / apt-get update . Esto puede suceder si agrega un repositorio y olvida agregar su clave pública, o si se produjo un error temporal en el servidor de claves al intentar importar la clave GPG.

Al ejecutar un apt update / apt-get update , o al intentar actualizar las fuentes del software usando una herramienta GUI, apt se queja de que no todos los índices del repositorio se pueden descargar y muestra errores como estos:

W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: https://ppa.launchpad.net/linuxuprising/apps/ubuntu bionic InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY EA8CACC073C3DB2A
W: Failed to fetch https://ppa.launchpad.net/linuxuprising/apps/ubuntu/dists/bionic/InRelease  The following signatures couldn't be verified because the public key is not available: NO_PUBKEY EA8CACC073C3DB2A
W: Some index files failed to download. They have been ignored, or old ones used instead.

Esto es solo un ejemplo. Este error puede aparecer no solo con los repositorios PPA de Launchpad, sino también con cualquier repositorio proporcionado por Google, Vivaldi o Node.js, etc.

El mensaje de error indica que el repositorio no se actualizará y se utilizarán los archivos de índice anteriores. Eso significa que no obtendrá actualizaciones de este repositorio, por lo que debe importar la clave pública GPG para solucionar este problema.

Cómo solucionarlo muy fácilmente The following signatures couldn't be verified because the public key is not available: NO_PUBKEY ... Error. ¡Debería funcionar en Debian, Ubuntu, Linux Mint, Pop! _OS, sistema operativo elemental y cualquier otra distribución de Linux basada en Debian o Ubuntu.

Solución 1:Corrección rápida de NO_PUBKEY para un solo repositorio/clave.

Si solo te falta una clave de repositorio público GPG, puedes ejecutar este comando en tu Ubuntu / Linux Mint / Pop! _OS / sistema Debian para solucionar el problema:

sudo apt-key adv --keyserver hkp://pool.sks-keyservers.net:80 --recv-keys THE_MISSING_KEY_HERE

Tienes que reemplazar THE_MISSING_KEY_HERE con la clave GPG que falta. La clave se muestra en el registro de actualización de apt / apt-get detrás de NO_PUBKEY. Por ejemplo, en el mensaje de error publicado anteriormente, la clave GPG que falta para usar en este comando es:EA8CACC073C3DB2A .

Consulte también:Cómo solucionar el error "No se pudo obtener lock / var / lib / dpkg / lock – open (11 recursos temporalmente no disponibles)"

Solución 2:importación por lotes de todas las claves GPG faltantes.

Si pierde varias claves públicas de OpenPGP, puede importarlas todas a la vez con esta frase:

sudo apt update 2>&1 1>/dev/null | sed -ne 's/.*NO_PUBKEY //p' | while read key; do if ! [[ ${keys[*]} =~ "$key" ]]; then sudo apt-key adv --keyserver hkp://pool.sks-keyservers.net:80 --recv-keys "$key"; keys+=("$key"); fi; done


No tiene que cambiar ninguna parte del comando, simplemente ejecútelo tal como está. Esto también funciona para arreglar una sola clave GPG que falta, pero es algo redundante. Sin embargo, funciona con cualquier número de claves GPG que falten.

El comando está ejecutando sudo apt update para actualizar sus fuentes de software y detectar claves GPG faltantes e importar cualquier clave faltante hkp://pool.sks-keyservers.net:80 como su servidor. Este servidor está constantemente sincronizado con muchos otros servidores, por lo que debería tener claves actualizadas. Puede usar un servidor diferente si lo desea.

El comando también usa una matriz para almacenar las claves GPG faltantes para las cuales ya hemos importado la clave. De lo contrario, el comando de importación de claves se ejecutaría dos veces por cada clave faltante.

También te puede interesar:Cómo crear (y publicar) una clave PGP en Linux usando una GUI


Debian
  1. Eliminar una clave caducada en APT

  2. Gpg:¿Cancelado por el usuario?

  3. gpg:comando no encontrado

  4. apt-key está desactualizado. ¿Cómo agregar claves de firma de repositorio OpenPGP sin ellas en Debian, Ubuntu, Linux Mint, Pop! _SO, etc

  5. Arreglar sudo:add-apt-repository:error de comando no encontrado

Cómo agregar un repositorio Apt en Ubuntu

Cómo configurar el servidor de repositorio APT local en Ubuntu 20.04

Cómo eliminar un repositorio y una clave GPG en Ubuntu

Cómo corregir el error "No se pudieron verificar las siguientes firmas" en Ubuntu Linux

Cómo reparar el error Apt-Get GPG NO_PUBKEY Ubuntu 14

¿Cómo arreglar el icono de la bandeja de Dropbox que falta?