Solucionar-error-NO_PUBKEY

Puede que veas un error de clave GPG pública (“NO_PUBKEY”) en Debian, Ubuntu o Mint al ejecutar apt update. Esto puede ocurrir cuando agregas un repositorio, y olvidas agregar su clave pública, o tal vez hubo un error temporal del servidor de claves al intentar importar la clave GPG.

Cuando se ejecuta una actualización apt update, o cuando se intenta actualizar las fuentes de software usando alguna herramienta con interfaz gráfica, apt se quejará de no poder descargar todos los índices del repositorio, mostrando errores como este:

Solucionar-error-NO_PUBKEY

Esto es sólo un ejemplo al agregar el repositorio de KDE Neon. Este error puede ocurrir no sólo con los repositorios PPA de Launchppad, sino con cualquier repositorio, como los proporcionados por Google, o Node.js, etc.

El mensaje de error dice que el repositorio no está actualizado, y que se utilizarán los ficheros índice anteriores. Esto significa que no recibirás actualizaciones de ese repositorio, por lo que debería importar la clave GPG pública para solucionar este problema, además de que es bloqueado por tema de seguridad.

Las siguientes firmas no se pudieron verificar porque la clave pública no está disponible: NO_PUBKEY …. error o No se puede actualizar de un repositorio como este de forma segura y por tanto está deshabilitado por omisión.. Debería funcionar en Debian, Ubuntu, Mint, Pop! y cualquier otra distribución GNU/Linux basada en Debian o Ubuntu.

Solución 1: Corrección rápida de NO_PUBKEY para un único repositorio / llave.

Si sólo te falta una clave de repositorio GPG público, puedes ejecutar este comando en tu sistema Ubuntu / Mint / Pop!_OS / Debian para solucionarlo:

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

Donde aquí_la_clave debes introducir la clave que te solicita. La clave se muestra en el registro apt update, después de NO_PUBKEY. Por ejemplo, en el mensaje de error que publiqué anteriormente, la clave GPG que falta que está formada de números y letras.

Solución 2: Importar por lotes todas las claves GPG que faltan.

Cuando faltan varias claves OpenPGP públicas, puedes usar una simple línea para importarlas todas de una sola vez:

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 hay necesidad de cambiar ninguna parte del comando, simplemente ejecútalo como está. Esto también funciona para arreglar una sola clave GPG que falta, pero es un poco redundante. No obstante, funciona con cualquier número de claves GPG que falten.

El comando ejecuta sudo apt update para actualizar tus fuentes de software y detectar claves GPG faltantes, e importa cada clave faltante usando hkp://pool.sks-keyservers.net:80 como servidor. Este servidor está sincronizado con muchos otros servidores continuamente, por lo que debería tener claves actualizadas. Puedes usar otro servidor si lo deseas.

El comando también utiliza una matriz para almacenar las claves GPG que faltan y para las que ya hemos importado la clave. Sin eso, el comando de importación de claves se ejecutaría dos veces por cada clave que falte.

 

Fuente: maslinux

¿Quién está en línea?

Hay 24915 invitados y ningún miembro en línea