it-swarm.com.de

Wie führe ich "Sudo apt-get update" über den Proxy in der Kommandozeile aus?

In meinem Büro möchte ich aktualisieren und herunterladen (wget) und hier verwenden sie Proxy?

Wie kann ich das per Kommandozeile machen?

77
Renjith G

In einigen Versionen ist Sudo so konfiguriert, dass alle Umgebungsvariablen gelöscht werden, wenn der Befehl ausgeführt wird. Um den Wert für Ihren http_proxy beizubehalten und dieses Problem zu beheben, müssen Sie/etc/sudoers bearbeiten und Folgendes ausführen:

visudo

Dann finden Sie eine Zeile, die besagt:

Defaults env_reset 

und füge danach hinzu:

Defaults env_keep = "http_proxy ftp_proxy" 

Die Dinge werden wie erwartet funktionieren.

Vielen Dank an kdogksu in den Ubuntu-Foren für die Suche nach solution .

Um nicht nur apt-get, sondern auch grafische X11-Utils wie beispielsweise synaptic, mintintall, ... zu reparieren, sollte die folgende Zeile in /etc/sudoers den Job erledigen:

Defaults env_keep = "http_proxy https_proxy ftp_proxy DISPLAY XAUTHORITY"
91

Benutze das.

[email protected]:~$ cat /etc/apt/apt.conf
Acquire::http::Proxy "http://Username:[email protected]:8080";

Das ist was ich benutze. Funktioniert perfekt.

Mit Apt können auch einzelne Einstellungen in Dateien unter /etc/apt/apt.conf.d/ platziert werden. Dies hat also genau den gleichen Effekt wie oben, ist jedoch möglicherweise einfacher zu pflegen, wenn Sie andere Zeilen in der Datei .conf haben:

[email protected]:~$ cat /etc/apt/apt.conf.d/05proxy
Acquire::http::Proxy "http://Username:[email protected]:8080";
39
John Cartwright

Das, was für mich funktioniert hat, war:

Sudo http_proxy=http://yourserver apt-get update

Was ein bisschen seltsam ist, weil einfach http_proxy exportiert und dann Sudo echo $ http_proxy ausgeführt wird, wobei der exportierte Wert gehorsam ausgedruckt wird

18
Sam
export http_proxy=http://proxyusername:[email protected]:proxyport
Sudo apt-get update

Für den Export sollte kein Sudoing erforderlich sein. Wenn Ihr Proxy anonym ist, lassen Sie einfach den Teil proxyusername:[email protected] weg.

11
Oli

Wenn es sich um eine temporäre Konfiguration handelt , können Sie Folgendes versuchen: Sudo bash -c 'http_proxy = "http: // <proxy_Host>: <proxy_port>/"apt-get update '

Sie benötigen dies, da die Umgebungsvariable für das Konto "root" definiert werden muss. Vorheriges Ausführen und Exportieren sollte nicht funktionieren.

Für eine permanente Konfiguration müssen Sie eine Systemdatei ändern. Dies ist bereits in der folgenden Antwort zu Wie überprüfe ich, ob der Netzwerk-Proxy wirklich angewendet wird? .

3
Huygens

Haben Sie versucht, /etc/apt/apt.conf zu bearbeiten? Ich benutze dies, um apt hinter unserem Corporate Proxy zu nutzen.

Acquire::http::proxy "http://user:[email protected]:port/";

Ich glaube, dass apt diesen Wert verwendet, es sei denn, $ http_proxy ist in Ihrer Shell-Umgebung definiert (d. H. $ Http_proxy hat Vorrang).

3
Jon Brett

Ubuntu ist unglaublich feindlich gegenüber der Authentifizierung von Proxys. Ich benutze einen Ubuntu-Laptop bei der Arbeit und die Anzahl der Brüche ist unglaublich.

Synaptic, Apt, Firefox, Chromium usw. verwenden unterschiedliche Methoden zum Festlegen eines Proxys und es gibt keinen Ort, an dem Anmeldeinformationen sicher angegeben werden können.

Einige Fehler zu diesem Thema: https://bugs.Edge.launchpad.net/ubuntu/+source/msttcorefonts/+bug/22007

https://bugs.Edge.launchpad.net/ubuntu/+source/apt-cacher/+bug/198138

https://bugs.Edge.launchpad.net/ubuntu/+source/apt/+bug/433827

https://bugs.Edge.launchpad.net/ubuntu/+source/b43-fwcutter/+bug/6836

Olis Vorschlag, einen Export zu verwenden, ist die einzige vage sichere Möglichkeit, dies zu tun. Manchmal ist es auch möglich, die Proxy-Unterstützung zu "fudgen", wenn der Proxy-Server die sekundäre Authentifizierung verwendet, um die Belastung der Hauptauthentifizierungsserver (z. B. Active Directory) zu minimieren. Hier wird die erste Proxy-Verbindung vom Proxy gegen AD authentifiziert, und für einen festgelegten Zeitraum (normalerweise 5 Minuten) werden alle anderen Verbindungen als dieser Benutzer "vertrauenswürdig" eingestuft. Daher können Sie Firefox öffnen, im Internet surfen (wo auch immer) und dann Ihr Dienstprogramm (wget, synaptic, was auch immer) ausprobieren, indem Sie einen Proxy angeben, aber den Benutzernamen leer lassen.

Ubuntu ist im Allgemeinen feindlich gegenüber jeder Unternehmensumgebung, nur weil es das Lesen von Passwörtern so einfach macht. Seahorse ist ein Hauptschuldiger, aber Network Manager ist auch schockierend: Stellen Sie eine Verbindung zu einem PEAP-authentifizierten Netzwerk her, und Sie haben Ihr Kennwort soeben im Applet gespeichert, damit jeder sehen kann, wer möglicherweise Ihren Laptop ausleiht. Offenbar wird das Teilen von Laptops im Linux-Land als Sakrileg angesehen, da Seahorse-Entwickler die Behauptung der Unsicherheit zurückwiesen. Danach hatte ich nicht das Herz, mit den Entwicklern des Netzwerkmanagers Kontakt aufzunehmen.

3
Scaine