apt-get za proxy na VirtualBox Ubuntu


Odpowiedzi:


8
http_proxy="http://host:port" apt-get something

powinno działać.

Jeśli potrzebujesz uwierzytelnienia, spróbuj

http_proxy="http://user:pass@host:port" apt-get something

A jeśli chcesz, aby było to stałe, prawdopodobnie powinieneś ustawić zmienne http_proxy (i ftp_proxy?) W swoim ~/.bashrc, aby wszystkie aplikacje obsługujące proxy działały w przyszłości, np. „Wget”.


2
należy jeszcze zauważyć, że jeśli hasło zawiera „@”, zastąp je „% 40” (bez cudzysłowów), w przeciwnym razie nie zadziała
dotslash,


4

Pełnomocnik jest określony przez ustawienie http_proxy, ftp_proxya all_proxyśrodowisko zmienne lokalnie (np ~/.bashrc) lub globalnie (np /etc/bash.bashrc). Te ustawienia są honorowane przez praktycznie wszystkie pakiety oprogramowania sieciowego (takie jak apt-get, wget, curl itp.):

# HTTP proxy without authentification
export http_proxy="http://host:port"
# HTTP proxy with authentification
export http_proxy="http://user:pass@host:port"

Jednak ustawienie ich w ten sposób nie pomaga podczas działania sudo apt-get ...- i wynika to z tego wiersza w /etc/sudoers:

Defaults env_reset

Ten wiersz resetuje wszystkie zmienne środowiskowe podczas używania sudo, ze względów bezpieczeństwa. W celu utrzymania wartości http_proxyitd. W sudoinwokacji, można określić wyjątki env_resetpoprzez env_keep:

# Exception specific to the command apt-get
Defaults!/usr/bin/apt-get env_keep="http_proxy https_proxy ftp_proxy"
# Exception specific to the user joe
Defaults:joe env_keep="http_proxy https_proxy ftp_proxy"

W ten sposób będziesz apt-gethonorować globalne ustawienie dla http_proxy, zamiast powielać ustawienie dla apt-getjakiegoś tajemniczego pliku konfiguracyjnego specyficznego dla apt.


To jest prawdziwa odpowiedź, moim zdaniem, ponieważ będziesz cały czas używać sudo apt-get ...do wszystkiego. Więc bez tego wpisu /etc/sudoersnie będzie działać.
mliebelt,

Ta env_resetlinia /etc/sudoersjest bardzo ważna!
Ari

1
@Ari: Tak jest; dlatego pokazałem jak go wyłączyć specjalnie dla apt-geti specjalnie dla zmiennych niezbędnych, zamiast powiedzieć „po prostu usunąć wiersz”.
DevSolar

@DevSolar: tak, plus 1 za to!
Ari
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.