W moim biurze chcę aktualizować i pobierać przez (wget), a tutaj używają proxy?
Jak mogę to zrobić za pomocą wiersza polecenia?
W moim biurze chcę aktualizować i pobierać przez (wget), a tutaj używają proxy?
Jak mogę to zrobić za pomocą wiersza polecenia?
Odpowiedzi:
W niektórych wersjach sudo jest skonfigurowane w taki sposób, że wszystkie zmienne środowiskowe są czyszczone podczas uruchamiania polecenia. Aby zachować wartość dla http_proxy i naprawić to, musisz edytować / etc / sudoers, uruchom:
visudo
Następnie znajdź wiersz, który mówi:
Defaults env_reset
i dodaj po nim:
Defaults env_keep = "http_proxy ftp_proxy"
Wszystko zacznie działać zgodnie z oczekiwaniami.
Dzięki kdogksu na forach Ubuntu za znalezienie rozwiązania tego problemu .
Aby nie tylko naprawić apt-get, ale także graficzne narzędzia X11, takie jak np. Synaptic, mintintall, ...), powinna wystarczyć następująca linia /etc/sudoers
:
Defaults env_keep = "http_proxy https_proxy ftp_proxy DISPLAY XAUTHORITY"
Użyj tego.
ubuntu@ubuntu:~$ cat /etc/apt/apt.conf
Acquire::http::Proxy "http://Username:Password@proxy.foo.bar.edu.au:8080";
Tego używam. Działa świetnie.
Apt pozwala również na umieszczenie poszczególnych ustawień w plikach pod /etc/apt/apt.conf.d/
, więc ma to dokładnie taki sam efekt jak powyżej, ale może być łatwiejsze do utrzymania, jeśli masz inne linie w .conf
pliku:
ubuntu@ubuntu:~$ cat /etc/apt/apt.conf.d/05proxy
Acquire::http::Proxy "http://Username:Password@proxy.foo.bar.edu.au:8080";
apt.conf
.
/etc/apt/apt.conf
lub użyć pliku konfiguracyjnego w /etc/apt/apt.conf.d
.... albo działa! :-)
E: Syntax error /etc/apt/apt.conf:2: Extra junk at end of file
Dla mnie zadziałało:
sudo http_proxy=http://yourserver apt-get update
Co jest nieco dziwne, ponieważ po prostu eksportując http_proxy, a następnie uruchamiając sudo echo $ http_proxy posłusznie wydrukowałem wyeksportowaną wartość
$http_proxy
rozszerza się, zanim sudo się uruchomi.
export http_proxy=http://proxyusername:proxypassword@proxyaddress:proxyport
sudo apt-get update
Eksport nie powinien być potrzebny, sudo
a jeśli twoje proxy jest anonimowe, po prostu porzuć proxyusername:proxypassword@
część.
wget
?
Jeśli jest to konfiguracja tymczasowa , możesz spróbować: sudo bash -c 'http_proxy = "http: // <serwer_ proxy>: <port_ proxy> /„ apt-get update ”
Potrzebujesz tego, ponieważ zmienna środowiskowa musi być zdefiniowana dla konta „root”. Robienie i eksportowanie wcześniej nie powinno działać.
Aby uzyskać trwałą konfigurację , musisz zmodyfikować plik systemowy. Jest to już opisane w poniższej odpowiedzi na temat sprawdzania, czy serwer proxy sieci naprawdę jest stosowany? .
Ubuntu jest niezwykle wrogi w uwierzytelnianiu serwerów proxy. Używam laptopa Ubuntu w pracy, a liczba awarii jest niesamowita.
Synaptic, Apt, Firefox, Chromium itp. Używają różnych metod określania serwera proxy i nie ma bezpiecznego miejsca na podanie danych uwierzytelniających.
Niektóre błędy na ten temat: https://bugs.edge.launchpad.net/ubuntu/+source/msttcorefonts/+bug/220070
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/683630
Sugestia Oli, by skorzystać z eksportu, jest jedynym niejasno bezpiecznym sposobem. Czasami możliwe jest również „zakodowanie” obsługi proxy, jeśli serwer proxy korzysta z wtórnego uwierzytelnienia, aby zminimalizować obciążenie głównych serwerów uwierzytelniania (powiedzmy być może Active Directory). To tutaj pierwsze połączenie z serwerem proxy jest uwierzytelniane przez serwer proxy względem usługi AD, a następnie przez określony czas (zwykle 5 minut) wszystkie pozostałe połączenia są „zaufane” dla tego użytkownika. Dlatego możesz otworzyć Firefoksa, przeglądać Internet (gdziekolwiek to zrobi), a następnie wypróbować narzędzie (wget, synaptic, cokolwiek), określając proxy, ale nazwę użytkownika pozostaw pustą.
Ubuntu jest zasadniczo wrogi każdemu środowisku korporacyjnemu, ponieważ pozwala na łatwe odczytywanie haseł. Konik morski jest głównym winowajcą, ale Menedżer sieci jest również szokujący - połącz się z dowolną siecią z uwierzytelnieniem PEAP i właśnie zapisałeś hasło w aplecie, aby każdy mógł zobaczyć, kto może pożyczyć Twój laptop. Najwyraźniej dzielenie się laptopami jest uważane za świętokradztwo na ziemi Linuksa, ponieważ programiści Seahorse odrzucili twierdzenia o niepewności. Po tym nie miałem serca skontaktować się z deweloperami menedżera sieci.
Czy próbowałeś edytować /etc/apt/apt.conf
? Używam tego, aby używać apt za naszym korporacyjnym proxy.
Acquire::http::proxy "http://user:password@host:port/";
Uważam, że apt używa tej wartości, chyba że $ http_proxy jest zdefiniowane w twoim środowisku powłoki (tzn. $ Http_proxy ma pierwszeństwo).
apt.conf
nadal powinien być używany. Możesz zobaczyć, jakie ustawienia konfiguracji apt sądzi, że zostały ustawione przy użyciu apt-config dump
.
Jeśli chcesz uruchomić „sudo apt-get update” przez proxy w wierszu poleceń, użyj polecenia poniżej,
sudo apt-get -o Acquire::http::proxy="http://user:password@host:port/" update;