Почему add-apt-repository теперь не может получить ключи за моим прокси-сервером, но я могу обновить списки пакетов и вручную получить ключи? [дубликат]

На этот вопрос уже есть ответ:

Я использую Ubuntu 14.04 и 12.04 с последними обновлениями за прокси-сервером в моей школе. Несколько месяцев назад у меня не было проблем. Однако за последние два месяца, когда я пытался добавить репозиторий с помощью add-apt-repository , не было получено никакого ключа. Затем я могу успешно использовать sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys KEY , но это раздражает. Я создал сценарии, которые добавляют PPA, устанавливают программное обеспечение и многое другое, которые сейчас не работают из-за этой проблемы.

Следует ли мне отправлять отчет об ошибке? Если да, не мог бы кто-нибудь направить меня куда подавать.

Вот как выглядит вывод моего терминала при попытке добавить PPA для индикатора погоды:

$ sudo add-apt-repository ppa:atareao/atareao
 Applications from atareao
 More info: https://launchpad.net/~atareao/+archive/ubuntu/atareao
Press [ENTER] to continue or ctrl-c to cancel adding it

gpg: keyring `/tmp/tmp16ytp9px/secring.gpg' created
gpg: keyring `/tmp/tmp16ytp9px/pubring.gpg' created
gpg: requesting key 36FD5529 from hkp server keyserver.ubuntu.com
gpgkeys: key A3D8A366869FE2DC5FFD79C36A9653F936FD5529 can't be retrieved
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0

$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 36FD5529
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --homedir /tmp/tmp.fla11h2USs --no-auto-check-trustdb --trust-model always --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyring /etc/apt/trusted.gpg.d/steam.gpg --keyserver keyserver.ubuntu.com --recv-keys 36FD5529
gpg: requesting key 36FD5529 from hkp server keyserver.ubuntu.com
gpg: key 36FD5529: public key "Launchpad PPA for atareao" imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)

Обновление: Мне удалось заставить его работать с параметром -E для sudo, поэтому работает команда sudo -E add-apt-repository ppa: atareao / atareao . Однако я не понимаю, почему раньше все работало без этого, а теперь нет. Кроме того, похоже, это не объясняет, почему другие команды с sudo работают без параметра -E .Это решение взято из Ubuntu 10.10.

-1
задан 10 November 2014 в 06:35

1 ответ

Вы сталкиваетесь с двумя проблемами:

  1. add-apt-repository полагается на существование корректного http_proxy и https_proxy значения.

  2. sudo не будет использовать все текущие значения среды. Вероятно, из соображений безопасности. Существует две возможности, как преодолеть это:

    1. Звонить sudo -E add-apt-repository <additional-options>

      Это будет использовать всю текущую среду.

    2. Можно настроить sudo автоматически скопировать http_proxy и https_proxy также. Сделайте это:

      sudo visudo
      

      Добавьте следующие строки:

      Defaults env_keep +="http_proxy"
      Defaults env_keep +="https_proxy"
      

      Blantantly скопирован с этого ответа.

3
ответ дан 6 October 2019 в 11:55

Другие вопросы по тегам:

Похожие вопросы: