Apt-Get hinter Proxy auf VirtualBox Ubuntu

Antworten:

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

sollte arbeiten.

Wenn Sie eine Authentifizierung benötigen, versuchen Sie es

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

Und wenn dies dauerhaft sein soll, sollten Sie wahrscheinlich die Variablen http_proxy (und ftp_proxy?) In Ihrem festlegen ~/.bashrc, damit alle Ihre proxyfähigen Anwendungen in Zukunft funktionieren, z. B. 'wget'.

PriceChild
quelle
2
Eine weitere Bemerkung ist, dass wenn das Passwort '@' enthält, es durch '% 40' (ohne Anführungszeichen) ersetzt wird, sonst funktioniert es nicht
Dotslash
8

Fügen Sie in /etc/apt/apt.conf die folgende Zeile hinzu:

Acquire::http::Proxy "http://MYDOMAIN\MYNAME:[email protected]:MYPORT"

Von: http://ubuntuforums.org/showthread.php?t=96802

(Anmerkung: aus dieser Antwort auf meine ähnliche Frage zu SF komplett gestohlen . Cred to Grizzly )

Squillman
quelle
Die Linie muss mit einem;
Verma
Mein Dateiname war anders, aber das hat bei mir funktioniert/etc/apt/apt.conf.d/01proxy
Jackie
4

Ein Proxy wird durch Setzen des spezifiziert http_proxy, ftp_proxyund all_proxyUmgebungsvariablen, entweder lokal (zB in ~/.bashrc) oder global (zB in /etc/bash.bashrc). Diese Einstellungen werden von praktisch allen Net-Software-Paketen (wie apt-get, wget, curl usw.) berücksichtigt:

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

Das Festlegen auf diese Weise hilft jedoch nicht beim Ausführen sudo apt-get ...- und das liegt an der folgenden Zeile in /etc/sudoers:

Defaults env_reset

Diese Zeile setzt bei Verwendung sudoaus Sicherheitsgründen alle Umgebungsvariablen zurück . Um zu halten die Werte http_proxyusw. in einem sudoAufruf, können Sie Ausnahmen festlegen env_resetüber 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"

Auf diese Weise können Sie apt-getdie globale Einstellung für http_proxy einhalten, anstatt die Einstellung für apt-geteine arkane apt-spezifische Konfigurationsdatei zu duplizieren .

DevSolar
quelle
Dies ist meiner Meinung nach die wirkliche Antwort, da Sie die ganze Zeit sudo apt-get ...für alles verwenden werden. Ohne diesen Eintrag in /etc/sudoerswird es also nicht funktionieren.
Mliebelt
Diese env_resetLinie /etc/sudoersist wirklich wichtig!
Ari
1
@Ari: Ja, das ist es. Deshalb habe ich gezeigt, wie man es speziell für apt-getund speziell für die benötigten Variablen deaktiviert , anstatt zu sagen "entferne einfach die Linie".
DevSolar
@ DevSolar: ja, und plus 1 dafür!
Ari