Acepte explícitamente el cambio para la 'etiqueta' de PPA

88

Cuando ejecuto apt-get updatemi ubuntu 17.10, recibo el siguiente error:

E: Repository 'http://ppa.launchpad.net/ondrej/php/ubuntu artful InRelease' changed its 'Label' value from '*****
The main PPA for PHP (5.6, 7.0, 7.1) with many PECL extensions *****' to '*****
The main PPA for supported PHP versions with many PECL extensions *****'
N: This must be accepted explicitly before updates for this repository can be applied.
See apt-secure(8) manpage for details."

La página del manual realmente no apunta a una solución. Mi pregunta es, ¿cómo acepto explícitamente el cambio?

Almiar
fuente
8
FWIW, apt-get está algo depreciado, use apt. sudo apt updateetc.
Panther

Respuestas:

195

Sería útil si publicara sus repositorios, pero, dicho esto, tiene dos formas de solucionar esto.

Primero sería usar en aptlugar de apt-get. aptse prefiere sobre apt-getel uso interactivo en versiones recientes de Ubuntu; y aptdebería, en teoría, arreglar esto por ti.

sudo apt update
sudo apt upgrade

Su segunda opción es usar --allow-releaseinfo-change

sudo apt-get --allow-releaseinfo-change update

Si esas opciones no resuelven el problema, publique sus repositorios, ¿está utilizando repositorios mixtos o anclados y, finalmente, díganos, es una actualización?

Pantera
fuente
1
Recibo un error al usar el segundo comando: # sudo apt-get --allow-release-info-change update E: La opción de línea de comando --allow-release-info-change no se entiende en combinación con las otras opciones
Roel Van de Paar
44
Utilizando sudo apt updatesolucionó el problema. Se me solicitó: "¿Desea aceptar estos cambios y continuar actualizando desde este repositorio? [Y / N]".
Ruben O. Chiavone
2
el apt-getcomando funcionó para mí, --allow-releaseinfo-change después del comando de actualización.
spinup
Ninguna de esas opciones funciona si invoca de forma aptno interactiva (por ejemplo, el shell no tiene un terminal de control). Incluso la --yesopción se ignora sin un terminal de control. Solo si ejecuta esos comandos desde un terminal gnome (o xterm, o cualquier terminal) funcionan esas opciones.
bgoodr
funciona muy bien!
Kamil Naja
54

Necesitas usar en aptlugar de apt-get. Le pedirá que acepte los cambios de forma interactiva. Simplemente ejecute:

sudo apt update

Debería preguntarte:

Do you want to accept these changes and continue updating from this repository? [y/N] 
Roy de Jong
fuente
7

Si desea implementarlo, por ejemplo, ejecutar en muchos servidores a la vez y luego ejecutar:

apt-get update --allow-releaseinfo-change
apt-get update
apt-get install packagename
TaaviT
fuente