69

When I run apt-get update on my ubuntu 17.10 I receive the following 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."

The man page doesn't really point to a solution. My question is, how do I explicitly accept the change?

  • 8
    FWIW, apt-get is somewhat depreciated, use apt . sudo apt update etc. – Panther Dec 27 '17 at 14:52
156

It would help if you posted your repositories, but, with that said, you sort of have 2 ways to fix this.

First would be to use apt rather than apt-get. apt is preferred over apt-get for interactive use in recent Ubuntu versions; and apt should, in theory, fix this for you.

sudo apt update
sudo apt upgrade

Your second option is to use --allow-releaseinfo-change

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

If those options do not resolve the issue, please post your repositories, are you using mixed repositories or pinning, and, finally, tell us, is this an upgrade ?

  • 1
    I get an error when using the second command: # sudo apt-get --allow-release-info-change update E: Command line option --allow-release-info-change is not understood in combination with the other options – Roel Jul 29 '18 at 21:25
  • 3
    Using sudo apt update fixed the issue. I was prompted: "Do you want to accept these changes and continue updating from this repository? [y/N]". – Ruben O. Chiavone Oct 19 '18 at 4:26
  • 2
    the apt-get command worked for me, with the --allow-releaseinfo-change after the update command. – spinup Nov 12 '18 at 20:17
  • None of those options work if you invoke apt non-interactively (e.g. the shell does not have a controlling terminal). Even the --yes option is ignored without a controlling terminal. Only if you run those commands from a gnome-terminal (or xterm, or whatever terminal) do those options work. – bgoodr Nov 18 '18 at 15:34
  • it works great ! – Kamil Naja Apr 30 at 19:42
49

You need to use apt instead of apt-get. It will ask you to accept the changes interactively. Simply run:

sudo apt update

It should ask you:

Do you want to accept these changes and continue updating from this repository? [y/N] 
2

If you want to deploy it e.g. run in on many servers at once then execute:

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

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.