Yanıtlar:
Bazı sürümlerde sudo, komutu çalıştırırken tüm ortam değişkenlerinin tümü silinecek şekilde yapılandırılmıştır. Http_proxy'nizin değerini korumak ve bunu düzeltmek için, / etc / sudoers dosyasını düzenlemeniz, çalıştırmanız gerekir:
visudo
O zaman şunu belirten bir çizgi bulun:
Defaults env_reset
ve ondan sonra ekleyin:
Defaults env_keep = "http_proxy ftp_proxy"
İşler beklendiği gibi çalışmaya başlayacak.
Bunun için çözüm bulmak için Ubuntu Forumlarındaki kdogksu'ya teşekkürler .
Sadece apt-get'i düzeltmek için değil, aynı zamanda grafik X11, örneğin synaptic, mintintall, ... gibi grafiksel işlemler /etc/sudoers
yapmak için aşağıdaki satırı da yapmalıdır:
Defaults env_keep = "http_proxy https_proxy ftp_proxy DISPLAY XAUTHORITY"
Bunu kullan.
ubuntu@ubuntu:~$ cat /etc/apt/apt.conf
Acquire::http::Proxy "http://Username:Password@proxy.foo.bar.edu.au:8080";
Kullandığım şey bu. Mükemmel çalışıyor.
Apt ayrıca bireysel ayarların altındaki dosyalara yerleştirilmesine izin verir /etc/apt/apt.conf.d/
, bu yüzden yukarıdaki ile tamamen aynı etkiye sahiptir, ancak .conf
dosyada başka satırlar varsa bakımı daha kolay olabilir :
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
veya bir config dosyasını yerleştirmek için /etc/apt/apt.conf.d
.... kullanabilirsiniz . :-)
E: Syntax error /etc/apt/apt.conf:2: Extra junk at end of file
Benim için çalışan şey şuydu:
sudo http_proxy=http://yourserver apt-get update
Bu biraz garip çünkü sadece http_proxy dışa aktarıyor ve sonra sudo echo $ http_proxy çalıştırılıyor itaatkar bir şekilde dışa aktarılan değeri yazdırıyor
$http_proxy
sudo koşmadan önce genişler.
export http_proxy=http://proxyusername:proxypassword@proxyaddress:proxyport
sudo apt-get update
Dışa aktarma sudo
işlemine gerek kalmamalı ve proxy'niz anonim ise, sadece proxyusername:proxypassword@
bölümü atmalısınız .
wget
mu?
Bir ise geçici yapılandırma , bu deneyebilirsiniz: sudo bash -c 'http_proxy = "http: // <proxy_host>: <proxy_port> /" apt-get update'
Buna ihtiyacınız var çünkü ortam değişkeninin "root" hesabı için tanımlanması gerekiyor. Daha önce yapmak ve ihraç etmek işe yaramaz.
Bir İçin Kalıcı yapılandırma , bir sistem dosyasını değiştirmek zorunda kalacaktır. Bu, Ağ proxy'sinin gerçekten uygulanıp uygulanmadığı ile ilgili aşağıdaki yanıtta açıklanmıştır. .
Ubuntu, kimlik doğrulaması yapan proxy sunucularına inanılmaz derecede düşmanca davranıyor. İşyerinde Ubuntu dizüstü bilgisayar kullanıyorum ve kırılma sayısı inanılmaz.
Synaptic, Apt, Firefox, Chromium, vb. Hepsi bir vekil belirlemek için farklı yöntemler kullanır ve kimlik bilgilerini güvenli bir şekilde belirtecek hiçbir yer yoktur.
Konuyla ilgili bazı hatalar: 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
Oli'nin bir ihracat kullanması önerisi, bunu yapmanın tek belirsiz yolu. Proxy sunucusu ana kimlik doğrulama sunucularındaki yükü en aza indirmek için ikincil kimlik doğrulaması kullanıyorsa bazen proxy desteğini "fudge etmek" de mümkündür (belki de Active Directory). Bu, ilk proxy bağlantısının AD'ye karşı proxy tarafından doğrulandığı, ardından belirli bir süre boyunca (genellikle 5 dakika), diğer tüm bağlantıların bu kullanıcı olarak "güvenilir" olduğu yerdir. Bu nedenle, bir proxy belirterek firefox'u açabilir, internette gezinebilir (her yerde yapacağınız), yardımcı programınızı deneyebilirsiniz (wget, synaptic, ne olursa olsun), ancak kullanıcı adını boş bırakın.
Ubuntu genellikle herhangi bir şirket ortamına düşmandır, çünkü şifrelerin çok kolay okunmasını sağlar. Seahorse birinci sınıf bir suçludur, ancak Ağ Yöneticisi de şok edicidir - herhangi bir PEAP onaylı ağına bağlanın ve dizüstü bilgisayarınızı ödünç alabilecek birini görmesi için şifrenizi uygulamada sakladınız. Seahorse geliştiricileri güvensizlik iddiasını reddettiği için dizüstü bilgisayar paylaşımının Linux ülkesinde kutsal olduğu düşünülüyor. Ondan sonra, ağ yöneticisi devs ile iletişim kuracak kalbim yoktu.
Düzenlemeyi denediniz /etc/apt/apt.conf
mi? Bunu kurumsal vekilimizin arkasında apt kullanmak için kullanıyorum.
Acquire::http::proxy "http://user:password@host:port/";
Kabuk ortamınızda $ http_proxy tanımlanmadıkça apt'nin bu değeri kullandığına inanıyorum (yani $ http_proxy öncelik taşır).
apt.conf
hala kullanılmalı. Hangi konfigürasyon ayarlarının apt tarafından ayarlanmış olduğunu düşündüğünü görebilirsiniz apt-config dump
.
“Sudo apt-get update” komutunu proxy üzerinden komut satırında çalıştırmak istiyorsanız, aşağıdaki komutu kullanın,
sudo apt-get -o Acquire::http::proxy="http://user:password@host:port/" update;