"Помилка GPG: Наступні підписи були недійсними: KEYEXPIRED"


32

Помилка, яка виникає під час спроби оновити мій список пакетів.

W: GPG error: http://download.opensuse.org ./ Release: The following signatures were invalid: KEYEXPIRED 1436387333
E: Some index files failed to download. They have been ignored, or old ones used instead.

Відповіді:


11
GPG error: http://download.opensuse.org ./ Release: The following signatures were invalid: KEYEXPIRED 1436387333

Це говорить про те, що ваш ключ GPG для цього сховища закінчився, що означає одну з двох речей: або у вашої системи неправильна дата, або ключ дійсно минув. Надалі вам потрібно зв’язатися з технічним обслуговувачем сховища та імпортувати новий ключ (мабуть, видаливши старий), як тільки репозиторій оновить свої ключі для підписання файлів.

Ви можете сміливо ігнорувати ці повідомлення, якщо ви не використовуєте пакети цих сховищ. Повідомлення можна видалити, якщо ви видалите сховище зі свого source.listфайлу / каталогу.


... пропонуємо додати, підтверджуючи, що системний годинник принаймні розумно правильний. Якщо система вважає свій 2020 рік, я думаю, що це призведе до ключових помилок, що минули.
дероберт

37

Відповіді я не отримую вище, у мене системний годинник був добре. Для мене працювало наступне:

sudo apt-key list | grep "expired: "
sudo apt-key adv --keyserver keys.gnupg.net --recv-keys [KEY]

Ключовою є частина за косою рисою: 0000X/<this part is the key>

Або скористайтеся цим вкладишем:

sudo apt-key list  | grep "expired: " | sed -ne 's|pub .*/\([^ ]*\) .*|\1|gp' | xargs -n1 sudo apt-key adv --keyserver keys.gnupg.net --recv-keys 

1
Дякуємо, вирішили проблему для мене з MySQL, але використовували --keyserver pgp.mit.edu. Джерело: bugs.mysql.com/bug.php?id=85029
Крейг ван Тондер

7

Цю програму було видалено і більше не існує. Ви повинні знайти інше джерело для пакетів, встановлених через samrog131 ppa.

Тим часом виконайте такі команди, щоб вирішити ситуацію.

По-перше, щоб видалити ключ з минулим терміном:

sudo apt-key del 1436387333

Потім, щоб видалити ppa:

sudo rm /etc/apt/sources.list.d/samrog131*
sudo apt-get clean
sudo apt-get update

Якщо вам потрібно додати ключ, дивіться тут .

sudo apt-get upgrade

Ви можете запустити:

sudo apt-get dist-upgrade

залежно від вашої ситуації. Якщо ви не впевнені, дивіться тут .


Це не вирішить нічого. APT буде намагатися забрати пакети з PPA знову, і не на нього знову
Braiam

@Braiam Насправді це вирішує проблему помилки 404 для відсутнього файлу samrog131 ppa - тієї, яку ви видалили з питання.
mchid

У нас є дублікати, які охоплюють цю проблему , ви не відповіли на це питання повністю, оскільки ви проігнорували найважливішу частину, яка була помилкою GPG. Будь ласка, не редагуйте питання знову.
Брайам

@Braiam, чому б ні, просто для того, щоб мої відповіді нічого не вирішили?
mchid

1) Якщо користувач додав ppa в source.list безпосередньо, ваша відповідь буде невдалою, насправді вона не вдасться, якщо додаток-ppa-сховище не було використано, а OP просто назвав файл по-іншому. 2) Якщо ви вилучите ключ, тепер попередження буде замінено помилкою, оскільки ключ не знайдено, тому створювати більше проблем.
Брайам

2

Як показано раніше По-перше, щоб видалити ключ з минулим терміном:

Sudo apt-key del 1436387333 Потім перейдіть на сайт:

http://download.opensuse.org/repositories/home:/sarimkhan/xUbuntu_14.04/

та завантажте "Release.key". Потім імпортуйте ключ за допомогою програми оновлення програмного забезпечення ubuntu14.04 або менеджера синаптичних пакетів.


2

Жодне з них не працювало для мене:

$ sudo apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys 5072E1F5

або

$ sudo apt-key adv --keyserver pgp.mit.edu --recv-keys 5072E1F5

або

$ sudo apt-key adv --keyserver pgp.mit.edu --recv-keys A4A9406876FCBD3C456770C88C718D3B5072E1F5

Джерелами для них є: https://bugs.mysql.com/bug.php?id=85029 та https://bugs.mysql.com/bug.php?id=94378

Я зробив одну підозрювану операцію у відчаї (кажучи "у" замість "N" внизу), яка, на мою думку, зовсім не потрібна:

$ sudo apt-get install mysql-apt-config

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be upgraded:
  mysql-apt-config
1 upgraded, 0 newly installed, 0 to remove and 294 not upgraded.
Need to get 35.6 kB of archives.
After this operation, 0 B of additional disk space will be used.
WARNING: The following packages cannot be authenticated!
  mysql-apt-config
Install these packages without verification? [y/N] y
Get:1 http://repo.mysql.com/apt/ubuntu/ trusty/mysql-apt-config mysql-apt-config all 0.8.13-1 [35.6 kB]
Fetched 35.6 kB in 0s (229 kB/s)      
Preconfiguring packages ...
dpkg-deb: error: archive '/var/cache/apt/archives/mysql-apt-config_0.8.13-1_all.deb' has premature member 'control.tar.xz' before 'contro
l.tar.gz', giving up
dpkg: error processing archive /var/cache/apt/archives/mysql-apt-config_0.8.13-1_all.deb (--unpack):
 subprocess dpkg-deb --control returned error exit status 2
Errors were encountered while processing:
 /var/cache/apt/archives/mysql-apt-config_0.8.13-1_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

І слідом за цим:

$ sudo apt-get update

що не допомогло.

Я все-таки отримав ту саму помилку.

Нарешті, працювало наступне :

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 5072E1F5

Я гадаю (сліпо), що, можливо, pgp.mit.edu змінив їх структуру або, можливо, "MySQL Release Engineering" (запустіть apt-key list) перемістив свої ключі на сервер ключів ubuntu або щось таке (я не маю уявлення про те, як ключі є підтримується).

Цей коментар до дублюючої нитки говорить те саме.

Сподіваюсь, це економить комусь певний час та зусилля.


Останній крок працював для мого ubuntu 14.04 LTS, де, як і всі інші кроки, не вдалося.
a4aravind

1

Так просто, як це має працювати:

apt-key adv --refresh-keys

Навіщо використовувати sedі xargsякщо gpgможна сортувати речі для себе?


у мене з’явилася така помилка: gpg: не відомий сервер клавіш (використовувати опцію --keyserver) gpg: помилка оновлення
keyserver

0

Це рішення найкраще працювало для мене.

wget -nv https://download.owncloud.org/download/repositories/stable/Ubuntu_16.04/Release.key -O Release.key

sudo apt-key add - < Release.key

Після запуску цих команд я зміг оновити та оновити, як очікувалося.


0

Відповідь, орієнтована на графічний інтерфейс:

Перейдіть до /etc/apt/sources.list.d у своєму файловому менеджері та двічі клацніть sources.list.

Це має відкрити діалогове вікно "Програмне забезпечення та оновлення". Клацніть "Інше програмне забезпечення", знайдіть праворуч з порушеннями та натисніть Видалити. Це зупинило помилку на моєму кінці.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.