Por que o add-apt-repository agora falha ao recuperar as chaves por trás do meu servidor proxy, mas posso atualizar as listas de pacotes e receber as chaves manualmente? [duplicado]

-1

Estou usando o Ubuntu 14.04 e 12.04 com as atualizações mais recentes por trás de um servidor proxy na minha escola. Eu não tive nenhum problema há alguns meses atrás. No entanto, nos últimos dois meses, quando tentei adicionar um repositório com add-apt-repository , não foi recuperada nenhuma chave. Eu posso usar sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys KEY com sucesso, mas isso é irritante. Eu criei scripts que adicionam PPAs, software de instalação e muito mais que estão falhando devido a esse problema.

Devo estar preenchendo um relatório de bug? Em caso afirmativo, alguém poderia me direcionar para onde arquivar.

Aqui está o resultado da minha saída de terminal ao tentar adicionar o PPA para o meu indicador meteorológico:

$ 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)

Atualização: Consegui fazê-lo funcionar com o parâmetro -E para o sudo, portanto, o comando que funciona é sudo -E add-apt-repository ppa:atareao/atareao . No entanto, não entendo porque as coisas funcionaram sem antes e agora não. Além disso, isso não parece explicar por que outros comandos com sudo funcionam sem o parâmetro -E . Esta solução vem do Ubuntu 10.10.

    
por HarlemSquirrel 30.10.2014 / 14:40

1 resposta

2

Você está enfrentando dois problemas:

  1. add-apt-repository confia na existência dos valores corretos de http_proxy e https_proxy .

  2. sudo não usará todos os valores de ambiente atuais. Provavelmente por motivos de segurança. Existem duas possibilidades de como superar isso:

    1. Ligue para o sudo -E add-apt-repository <additional-options>

      Isso usará todo o ambiente atual.

    2. Você pode configurar o sudo para copiar automaticamente http_proxy e https_proxy também. Faça isso:

      sudo visudo
      

      Adicione as seguintes linhas:

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

      Cópia copiosamente de esta resposta .

por MadMike 30.10.2014 / 19:46