Bir proxy üzerinden çalışmak için eklenti-depo nasıl alabilirim?

109

"Ubuntu 10.04 (Lucid) ve 10.10 (Maverick) Sunucularına Çapraz Takım Zinciri Kurma" talimatlarını takip etmeye çalışıyorum wiki.linaro.org'da (Ubuntu 10.04 VM'imde). İlk adım:

sudo add-apt-repository ppa:linaro-maintainers/toolchain

Ama koştuğumda şunu elde ederim:

Error reading https://launchpad.net/api/1.0/~linaro-maintainers/+archive/toolchain: <urlopen error [Errno 110] Connection timed out>

Sorunun, özellikle HTTPS için işverenimin proxy sunucusu için yapılandırmamla ilgili olduğunu tahmin ediyorum.

Firefox'ta İşte 'yi açtığımda, "Bağlantı zaman aşımına uğradı ". Daha sonra Firefox Tercihleri'ne gittim - & gt; Gelişmiş - & gt; Ağ - & gt; Ayarlar ... ve HTTP Proxy'yi "ağ geçidi" ve 8080'e ayarlayın ve "Tüm protokoller için bu proxy sunucusunu kullan" seçeneğini işaretleyin. Sonra sayfa yüklendi. Bu teorimimi destekliyor.

http_proxy ve https_proxy ortam değişkenlerini (hem alt hem de büyük harf) ayarlamayı denedim:

$ set | grep -i proxy
HTTPS_PROXY=https://gateway:8080
HTTP_PROXY=http://gateway:8080
http_proxy=http://gateway:8080
https_proxy=https://gateway:8080

Ayrıca bunları değiştirmeyi denedim:

$ set | grep -i proxy
HTTPS_PROXY=gateway:8080
HTTP_PROXY=gateway:8080
http_proxy=gateway:8080
https_proxy=gateway:8080

Ve bu ikinci satırı /etc/apt/apt.conf dosyasına eklemeyi denedim:

Acquire::http::proxy "http://gateway:8080/";
Acquire::https::proxy "https://gateway:8080/";

Fakat aynı hatayı almaya devam ediyorum.

Bunu nasıl giderebilirim?

Güncelleme: cevabı kabul edildi "Depo ekleyerek ve terminalden bir proxy arkasına bağlanırken sorun oluştu" ve daha ileride:

$ sudo add-apt-repository ppa:linaro-maintainers/toolchain
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 keyserver.ubuntu.com --recv 1DD749B890A6F66D050D985CF1FCBACA7BE1F97B
gpg: requesting key 7BE1F97B from hkp server keyserver.ubuntu.com
gpgkeys: HTTP fetch error 7: couldn't connect to host
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0

"HTTP getirme hatası" nın " /etc/sudoers " değerine "Varsayılan env_keep = http_proxy" eklemem gerektiği anlamına mı geldiğini merak ediyorum ...

2 numaralı güncellemeyi yap: Ekledim:

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

... 516032 numaralı hata için 18 yorum , ama yine de "gpgkeys: HTTP getirme hatası 7: ana bilgisayara bağlanamadı" hatası alıyorum.

Ve bu meraklı:

$ sudo env | grep proxy
https_proxy=https://gateway:8080

... çünkü http_proxy burada değil.

Herhangi bir tavsiye takdir edilir.

Güncelleme # 3: Sanal makinemin ana bilgisayarı bir dizüstü bilgisayar olduğu için, onu eve götürdüm ve orada çalıştı (proxy kullanmadan):

$ sudo add-apt-repository ppa:linaro-maintainers/toolchain
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 keyserver.ubuntu.com --recv 1DD749B890A6F66D050D985CF1FCBACA7BE1F97B
gpg: requesting key 7BE1F97B from hkp server keyserver.ubuntu.com
gpg: key 7BE1F97B: public key "Launchpad Linaro Overlay PPA" imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)

Çalıştı. Yani sorun, proxy yapılandırmasıyla ilgilidir. Ama sanırım bir çözümüm var.

    
sordu Daryl Spitzer 15.07.2011 02:49

13 cevap

162

Proxy'leri yapılandırmaya ek olarak, sudo seçeneğini çevreyi -E seçeneği ile koruyacak şekilde söyleyin:

export http_proxy=http://<proxy>:<port>
export https_proxy=http://<proxy>:<port>
sudo -E add-apt-repository ppa:linaro-maintainers/toolchain

kullanıcı adı ve şifre ile:

export https_proxy=https://<username>:<password>@<proxy>:<port>
    
verilen cevap Amal Pillai 08.02.2012 12:49
37

Proxy'nin arkasında gpg anahtarı eklemek için bir terminalde aşağıdaki kodu kullanın,

sudo apt-key adv --keyserver-options http-proxy=http://USER:[email protected]_URL:PORT/ --keyserver keyserver.ubuntu.com --recv-keys GPG_KEY

Ve büyük harfleri buna göre değiştirin. Kullanıcı kimlik doğrulaması (yani kullanıcı adı ve parola) olmadan bir proxy kullanıyorsanız, bunun yerine http-proxy=http://PROXY_URL:PORT/ kullanın.

Örneğin, kullanabileceğiniz% co_de değerine sahip olmak için

sudo apt-key adv --keyserver-options http-proxy=http://user:[email protected]:3128/ --keyserver keyserver.ubuntu.com --recv-keys C2514567EEA14886

burada,

USER_ID=user
PASSWORD=abc123
PROXY_URL=10.10.2.21
PORT=3128

Kullanıcı kimlik doğrulamaya sahip değilseniz, sadece

sudo apt-key adv --keyserver-options http-proxy=http://10.10.2.21:3128/ --keyserver keyserver.ubuntu.com --recv-keys C2514567EEA14886
    
verilen cevap Patxi Gomez 06.02.2013 19:04
8

Son! Https_proxy adresini şu şekilde ayarlamanız gerekir:

export https_proxy=....

sadece http_proxy ayarlanmış değildir.

Ve eklenti-apt-deposunu root olarak, sudo ile değil NOT olarak çalıştırmam gerekiyordu.

Kod:

sudo su
add-apt-repository ppa:........
    
verilen cevap DaRattler 14.10.2011 11:55
6

Proxy yapılandırmasının ayarlandığı, ancak bir şekilde sunucunun bağlantı kurulamadığı anlaşılıyor ...

Böyle çözdüğüm çok benzer bir sorun vardı: Kurumsal proxy, güvenlik nedenleriyle yalnızca 80 ve 443 numaralı bağlantı noktalarına izin verir. Bu nedenle, kurulum gerçekleştiğinde, HKP protokolü 11371 numaralı bağlantı noktasını kullandığı için, size izin vermez.

Yani, SSH'leri kısaltmak ve dışarıdaki sunucularınızdan birinin anahtarını almak, indirmek ve yerel olarak kurmak, anahtar sunucusunu aşağıda listelenenlerden açık olarak belirtebilir ve bağlantı noktasını belirtebilirsiniz:

İşte

örn.

apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys XXXXX

Patlama, Voila!

    
verilen cevap leroyse 26.07.2013 11:40
3

sudoers değişimin beklendiği gibi çalışmadığı nedeni şu olur:

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

Yazmalısınız:

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

Ayrıca, Defaults ile env_keep arasındaki alanın her seferinde bir sekme olduğundan emin olun.

    
verilen cevap Urhixidur 21.01.2015 20:38
3

Bunu /usr/lib/python3/dist-packages/softwareproperties/ppa.py 'yi düzenleyerek ve

ekleyerek bu sorunu çözdüm.
"--keyserver-options", "http-proxy=<proxy_url>",

aşağıdaki satırın altında

"--keyserver", self.keyserver,

Daha fazla arka plan bilgisi

ppa.py , add-apt-repository tarafından gpg çağrısında kullanılan python betiğidir. Bazen http_proxy ortam değişkenini kullanmadığı gpg ile bir hata gibi görünüyor. Bu, /root/.gnupg/dirmngr.conf dosyasının görüntülenmesi ve honor-http-proxy değerinin yorumlanmadığını kontrol ederek doğrulanabilir.

    
verilen cevap Junior Leota 05.07.2017 21:56
1

Bu bana yardımcı oldu:

sudo https_proxy='https://user:[email protected]:port/' \
http_proxy='http://user:[email protected]:port/' \
ftp_proxy='ftp://user:[email protected]:port/' \
no_proxy=localhost,127.0.0.0/8,10.0.0.0/8 add-apt-repository ppa:webupd8team/java

Komutta gerekmeyen bazı çevre değişkenleri olduğunu tahmin ediyorum ama onlar zarar vermezler.

    
verilen cevap leo 13.06.2014 18:48
1

PPA'yı el ile /etc/apt/sources.list dosyasına ekleyin:

deb http://ppa.launchpad.net/<user>/<repo>/ubuntu trusty main

Dosyayı kaydedin ve sudo apt-get update dosyasını çalıştırın. Bu hata ortaya çıkabilir:

W: GPG error: http://ppa.launchpad.net trusty InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 5BB92C09DB82666C

PPA'nın anahtarını kabul etmek için aşağıdaki komutu çalıştırın, ilgili PPA için anahtarı (5BB92C09DB82666C) değiştirmeyi unutmayın.

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 5BB92C09DB82666C

sudo apt-get update dosyasını çalıştırın ve işiniz bitti.

Ref: Debian'da Launchpad PPA'ları Nasıl Eklenir? % Co_de% Komutu ile

    
verilen cevap Ajoy 06.04.2017 09:27
1

Aslında, aynı sorunları yaşadım, bu sayfayı nasıl buldum.

  • ortam değişkenleri http_proxy (büyük / küçük harfe duyarlı) ve https_proxy (her halükarda) bir şeyler yapar. İlk aşamada bunları ayarlamamak, ortam değişkenlerini ayarlamak bazı etkilere sahip gibi görünmektedir; Onları vermezseniz başarısız olur

    TCRKVMW ~ $ sudo su -
    TCRKVMW ~ # export http_proxy=http://10.54.0.4:8080/
    TCRKVMW ~ # export https_proxy=http://10.54.0.4:8080/
    TCRKVMW ~ # add-apt-repository ppa:webupd8team/java
    You are about to add the following PPA:
     Oracle Java (JDK) Installer (automatically downloads and installs Oracle JDK7 / JDK8 / JDK9). There are no actual Java files in this PPA.
    

    (gerisi başarılı - bu sefer)

Şey, bazen, sadece takılıp kalkar ve normal zaman aşımı mesajıyla biter:         PPA eklenemiyor: '" İşte okunurken hata oluştu: (7,' Launchpad'e bağlanılamadı. ağ bağlantı noktası 443: Bağlantı zaman aşımına uğradı ') "'.

... ama ben hile yapıyorum, bütün bunları kök olarak yapıyorum. Kolay bir çözüm / etc / profile düzenlemek veya Ubuntu / Mint'te /etc/profile.d dosyasına bir komut eklemek:

    TCRKVMW ~ $ sudo su -c 'F=/etc/profile.d/proxy.sh S="export proxy_http=\"http://192.168.99.4\"\nexport proxy_https=\"http://192.168.99.4\"" ; echo -e ${S} > ${F} ; chmod 700 ${F}'

Oh, evet, ayrıca curl (bu arada apt-add-repository tarafından kullanılan) ile ilgili bir şey var. Kılavuz, ev dizininize .curlrc eklemeyi söylüyor. Apt-add-directory kökün kendi olduğu için, onu /root/.curlrc dosyasına eklemek demektir:

    proxy_http="http://192.168.99.4"
    proxy_https="http://192.168.99.4"

İyi bir fikir, kendi başına ~ / .curlrc

'da aynısını yapmaktır.

Ayrıca, / etc / wgetrc'deki proxy'yi etkinleştirmek iyi bir şeydir, ancak sorulan soruyla ilgisi olmamasına rağmen, sadece Google'da başka bir arama kaydediyorum (bunu okuduysanız, birden fazla hesabınız var) bir proxy ile) ...

    
verilen cevap Marabiloso 04.10.2017 18:31
1

Bu dört adımlı yaklaşım benim için bir kurumsal proxy arkasında bir Ubuntu 17.04 VM üzerinde çalıştı.

  1. sudo apt-add-repository ppa:brightbox/ruby-ng ve başarısız olmasına izin ver
  2. sudo apt update ve The following signatures couldn't be verified because the public key is not available: NO_PUBKEY F5DA5F09C3173AA6 gibi bir hata mesajı arayın
  3. sudo apt-key adv --keyserver-options http-proxy=http://10.0.2.2:3128 --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys F5DA5F09C3173AA6
  4. sudo apt update şimdi çalışacaktır

Ana makine sanal makinesinin, 3128 numaralı bağlantı noktasından CNTLM proxy sunucu çalıştırdığını unutmayın.

    
verilen cevap thegreendroid 14.12.2017 04:28
0

Aşağıdaki komutu terminalde çalıştırın

export http_proxy=http://username:[email protected]:port/
export ftp_proxy=http://username:[email protected]/
    
verilen cevap Deepak Rajput 08.02.2012 08:05
0

Sistem geneli ortam değişkenleri gerçekten /etc/environment 'ye eklenmelidir ( sudo veya gksu kullanın), ancak size bildirilen hata, gpg verilerinin bulunmadığını belirtir. Fikirler:

  • proxy ayarlarını kontrol edin (erişiminiz varsa)
  • proxy'nin bir şekilde şifrelenmiş trafiğin çıkışını azalttığını kontrol edin.
  • proxy ile bağlantının gerçekte yapıldığını görmek için sürekli bir netstat çalıştırın
  • son çare tcpdump & amp; wireshark'ta inceleyin
  • bir http tüneli deneyin;)
verilen cevap t0m5k1 29.08.2011 23:04
0

/etc/apt/apt.conf.d/01proxy olarak buna benzer bir şey ekleyin

Acquire::http { Proxy "http://192.168.0.99:3142"; };

Bu, all yetenek indirmelerini proxy edecektir, ancak bence arka uçta bunu yapmanın tek yolu budur. Proxy'niz destekliyorsa, http://my.proxy:port/www.target.site.com/url için çalıştığını bildiğim% co_de gibi bir URL de kullanabilirsiniz

Add-apt-deposunun kendisinin bu ayarları kullanıp kullanmadığından emin değilim, ancak bu işi yapamazsanız, depoyu her zaman apt-cache-ng veya /etc/apt/sources.list

dosyanıza ekleyebilirsiniz.

11.10'dan beri ana repoda çapraz olarak da kullanılabilir, sadece /etc/apt/sources.list.d/*mytoolchain* . Ayrıca, emdebian tarafından kullanılabilen çapraz-araçlar da var ve bazı talimatlar: İşte

    
verilen cevap user72421 27.07.2012 19:08

Etiketlerdeki diğer soruları oku