Установка R из репозитория CRAN Ubuntu: Нет ошибки открытого ключа
Я нахожусь на версии 2.13 R и хотел бы обновить ее до более новой версии, чтобы использовать некоторые пакеты, которые зависят от R> = 2.14.
У меня есть строка в моем файле sources.list, как описано здесь. Затем я перехожу к терминалу и набираю:
sudo apt-get update
и получите следующую ошибку при попытке обновить R на ближайшем ко мне зеркале CRAN:
Чтение списков пакетов... Готово
W: GPG error: http://lib.stat.cmu.edu oneiric/Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 51716619E084DAB9
Есть идеи, как отладить эту ошибку?
Ответы
Ответ 1
Как @Ben Bolker прокомментировал (извините, что я угнал ваш комментарий, но правильный ответ еще не был опубликован), в описании репозитория debian package есть раздел secure apt
, который гласит:
SECURE APT
Архивы архивов Debian на CRAN подписываются с ключом "Johannes Ranke (архив CRAN Debian)" с ключом ID 381BA480. Вы можете получить это с помощью
gpg --keyserver subkeys.pgp.net --recv-key 381BA480 или альтернативно, используя другой ключевой сервер,
gpg --keyserver pgp.mit.edu --recv-key 381BA480 Если это не это может быть связано с портом 11371 блокировки брандмауэра. Кроме того, вы можете искать 0x381BA480 по адресу http://keyserver.noreply.org/ или http://pgp.mit.edu/ и скопируйте блок ключей в обычный текст файл, названный, например, jranke_cran.asc.
Если получение ключа с помощью gpg действительно сработало, вам нужно экспортировать его в текстовый файл
gpg -a --export 381BA480 > jranke_cran.asc В обоих случаях вам нужно для того, чтобы ключ, известный для apt-системы, выполнил
apt-key добавляет jranke_cran.asc как root.
Если вы еще этого не сделали, это, вероятно, устранит вашу проблему.
Ответ 2
Простейшее решение, которое сработало для меня, было от Emre Sahin в этот поток:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E084DAB9
Ответ 3
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys KEYID
и замените KEYID номером, указанным в сообщении об ошибке.
Ответ 4
Благодаря Филиппу Буркхардту я все исправил.
Посмотрите здесь или попробуйте следующее:
gpg --keyserver pgpkeys.mit.edu --recv-key 51716619E084DAB9
gpg -a --export 51716619E084DAB9 | sudo apt-key add -
Ответ 5
Я столкнулся с той же проблемой, и единственным решением, которое я нашел, возможно, из-за брандмауэра, было использование полезного Y PPA Manager. Два шага ниже наброски работали над Ubuntu 15.04.
1) Сначала установите Y PPA Manager:
sudo add-apt-repository ppa:webupd8team/y-ppa-manager
sudo apt-get update
sudo apt-get install y-ppa-manager
2) Затем введите отсутствующие ключи, запустив Y PPA Manager:
y-ppa-manager
Нажмите "Дополнительно"
Затем нажмите "Попробуйте импортировать отсутствующие ключи GPG"
Наконец, обновите его, чтобы проверить, работает ли он:
sudo apt-get update
Ответ 6
Как и другие опубликованные выше, этот однострочный лайнер, похоже, хорошо работает на Debian 6:
sudo apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys 381BA480
Executing: gpg --ignore-time-conflict --no-options
--no-default-keyring --secret-keyring /etc/apt/secring.gpg --trustdb-name /etc/apt/trustdb.gpg --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver hkp://pgp.mit.edu:80 --recv-keys 381BA480
gpg: requesting key 381BA480 from hkp server pgp.mit.edu
gpg: key 381BA480: public key "Johannes Ranke (CRAN Debian archive) <[email protected]>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg: imported: 1
Ответ 7
Вот пошаговый ответ, за которым проще следовать.
Получите ключ (последние 8 цифр в предупреждающем сообщении):
gpg --keyserver pgp.mit.edu --recv-key E084DAB9
Результат должен выглядеть следующим образом:
gpg: requesting key E084DAB9 from hkp server pgp.mit.edu
gpg: key E084DAB9: public key "Michael Rutter <[email protected]>" imported
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
Добавьте ключ (требуется доступ суперпользователя):
gpg -a --export E084DAB9 | sudo apt-key add -
Обновите репозитории:
sudo apt-get update
Там не должно быть никаких предупреждений о пропавшем ключе сейчас.
Ответ 8
Это решило мою проблему
$ wget -q -O - https://archive.kali.org/archive-key.asc | apt-key add