'apt-get' प्रॉक्सी के साथ काम नहीं करता है


52

आज्ञा के लिए

sudo apt-get update

मुझे निम्नलिखित त्रुटि मिलती है:

W: Failed to fetch http://ch.archive.ubuntu.com/ubuntu/dists/maverick-updates/multiverse/binary-i386/Packages.gz  
407  Proxy Authentication Required (The ISA Server requires authorization to fulfill the request. Access to the Web Proxy filter is denied. )

मैं VirtualBox का उपयोग करके Windows XP पर स्थापित Ubuntu 10.10 चला रहा हूं। इंटरनेट कनेक्शन के लिए मैं एक प्रमाणीकरण के साथ प्रॉक्सी सर्वर का उपयोग कर रहा हूं। मैंने gnome-network-proxyप्रॉक्सी सेटिंग सिस्टम-वाइड सेट करने के लिए टूल का उपयोग करने की कोशिश की ।

उसके बाद प्रारूप के साथ चर /etc/environmentद्वारा अद्यतन किया गया है , कोई प्रमाणीकरण डेटा नहीं थे।http_proxyhttp://my_proxy:port/

मैंने फ़ायरफ़ॉक्स के साथ यह जाँच की। ब्राउज़र ने मुझसे लॉगिन और पासवर्ड के लिए कहा और सब कुछ ठीक काम कर रहा था। यह दुर्भाग्य से उपयुक्त नहीं था। मैंने यहाँ वर्णित के रूप में भी करने की कोशिश की है । दुर्भाग्य से यह काम नहीं करता है।

यह किसी भी तरह से संबंधित हो सकता है कि एक प्रॉक्सी विंडोज डोमेन में है, कोई विचार?

मेरा प्रॉक्सी नाम http- प्रॉक्सी है । क्या ' - ' यहाँ एक विशेष चरित्र है?


2
क्या आपने सिस्टम -> वरीयताओं -> नेटवर्क प्रॉक्सी के तहत वैश्विक नेटवर्क प्रॉक्सी का उपयोग किया है, और सेटिंग्स को वैश्विक रूप से लागू किया है?
DemonWareXT

आप GUI उपकरण GrrProxy
Renae Lider

जवाबों:


52

मेरे कॉर्पोरेट नेटवर्क के लिए मुझे मेरे व्यवस्थापक द्वारा प्रारूप में प्रॉक्सी नाम दिया गया था:

http://[username]:[password]@[proxy-webaddress]:[port]

Windows नेटवर्क के लिए हमारा उपयोगकर्ता नाम प्रारूप में है:

[domain]\[username]

उदाहरण के लिए:

http://mywindowsdomain\fossfreedom:password@askubuntu-proxy.com:8080

यह निम्नलिखित नई फ़ाइल में जोड़ा गया था (यह डिफ़ॉल्ट रूप से मौजूद नहीं है):

gksudo gedit /etc/apt/apt.conf.d/01proxy

निम्नलिखित पाठ जोड़ा गया था:

Acquire::http::Proxy "http://mywindowsdomain\fossfreedom:password@askubuntu-proxy.com:8080";

यदि आप एक अनाम प्रॉक्सी का उपयोग कर रहे हैं तो आपको अपने लॉगिन क्रेडेंशियल की आवश्यकता नहीं है:

Acquire::http::Proxy "http://askubuntu-proxy.com:8080";

फ़ाइल सहेजें और फिर जाँच की कि सब ठीक था:

sudo apt-get update

उन लोगों के लिए जो इसे बाद में पढ़ेंगे: यह अप्रशिक्षित आंख के लिए एक हैक की तरह लगता है, लेकिन यह कॉर्पोरेट अविश्वसनीय रूप से आज्ञा का पालन करने का एक सरल तरीका है।
मैकडफ

1
यह पूरी तरह से काम करता है। UNLESS आपने पहले /etc/apt/apt.conf को खराब एक्वायर लाइन के साथ सेट किया है। मैंने बस यही किया, और मुझे बस इतना करना था कि उस लाइन को हटा दें।
हफमैन

उबंटू 12.10 पर, मुझे काम करने से पहले /etc/apt/apt.conf.d/01proxy to /etc/apt/apt.conf में किए गए परिवर्तनों को कॉपी करना होगा।
स्टीफन निदिज़ेल्स्की

इन संपादन के साथ भी मुझे यह मेरे लिए 12.04 के साथ काम करने के लिए नहीं मिल सका ... लेकिन मैंने ntlmaps का उपयोग करके और इसे कॉन्फ़िगर करके और मध्यवर्ती मध्यवर्ती प्रॉक्सी के लिए apt.conf फ़ाइल को इंगित करके काम करने में कामयाब रहा।
monkut

The program 'gksudo' is currently not installed. You can install it by typing: sudo apt-get install gksu(जो निश्चित रूप से एक प्रॉक्सी स्थापित किए बिना काम नहीं करेगा ...) सौभाग्य से sudoठीक काम करता है।
TED

13

मैंने पाया है कि USERNAME और PASSWORD को "नेटवर्क प्रॉक्सी" एप्लेट में दर्ज किया गया है जो apt.conf फ़ाइल में संग्रहीत नहीं है। आपको मैन्युअल रूप से /etc/apt/apt.conf फ़ाइल में उपयोगकर्ता नाम और पासवर्ड जोड़ना होगा।

"नेटवर्क प्रॉक्सी" एप्लेट केवल होस्टनाम और पोर्ट को संग्रहीत करता है।

मूल वाक्य रचना है

Acquire::http::proxy "http://User:Password@host:port/";

Acquire::ftp::proxy "ftp://User:Password@host:port/";

Acquire::https::proxy "https://User:Password@host:port/";

यदि आप Windows उपयोगकर्ता नाम और पासवर्ड का उपयोग कर रहे हैं, तो इस सलाह का पालन करें:

User = Domain/Username

(विंडोज़ उपयोगकर्ता उपयोग /नहीं करते हैं \)

यदि आप विशेष पात्रों के साथ विंडोज मजबूत / जटिल पासवर्ड का उपयोग कर रहे हैं, तो आपको मूल्यों के लिए URL एन्कोडिंग का उपयोग करना होगा, उदाहरण के लिए पासवर्ड में "@" "% 40" होगा।


(विंडोज़ उपयोगकर्ता उपयोग करते हैं / नहीं) तो मैं क्यों अटक रहा हूँ :) धन्यवाद!
GaiusSensei

9

Http: // उपयोगकर्ता केhttp_proxy लिए सेटिंग का प्रयास करें: @ प्रॉक्सीवर पास करें: पोर्ट /

संपादन:
यदि सेटिंग http_proxyकाम नहीं करती है तो संपादन का प्रयास करें apt.conf। में
उबंटू apt.confमें खंडित है /etc/apt/apt.conf.d/निर्देशिका।
इस निर्देशिका में संपादित करें /etc/apt/apt.conf.d/01ubuntu:

APT {
    Acquire {
        http {
            Proxy "http://user:password@server:port";
        };
    };
};

या Synaptic का उपयोग करके इसे सेट करने का प्रयास करें: सेटिंग्स -> प्राथमिकताएं -> नेटवर्क
और फिर "प्रॉक्सी प्रॉक्सी कॉन्फ़िगरेशन" में अपनी प्रॉक्सी सेटिंग सेट करें।


3
क्या आपका मतलब / आदि / पर्यावरण फ़ाइल है?
tommyk

Yest, यह विश्व स्तर पर इस चर को सेट करेगा।
कैजुअल कोडर

पासवर्ड के भाग के रूप में कोई कॉलन को कैसे एनकोड करेगा?
k0pernikus

/ etc / एनवायरनमेंट apt-get (या कम से कम इसे रिस्टार्ट करने की आवश्यकता है) के साथ काम नहीं कर रहा है, apt.conf बदलने का तुरंत प्रभाव पड़ता है
Danubian Sailor

मैं "मैनुअल प्रॉक्सी कॉन्फ़िगरेशन" और "सिस्टम वाइड लागू करें" की स्थापना के लिए नेटवर्क में काम कर सकता हूं।
विल शेपर्ड

4

मैं एक MS ISA प्रॉक्सी के पीछे हूँ और मैं Cntlm ऑथेंटिकेशन प्रॉक्सी का उपयोग कर रहा हूँ; में apt.confमैं 4 लाइनें हैं; मैंने कहीं पढ़ा है कि अंतिम पंक्ति खाली होनी चाहिए, लेकिन मुझे इसके बारे में निश्चित नहीं है। यह पूरी तरह से काम करता है:

Acquire::http::proxy "http://127.0.0.1:3128/";
Acquire::ftp::proxy "ftp://127.0.0.1:3128/";
Acquire::https::proxy "https://127.0.0.1:3128/";

3

cntlm में एक खोज विकल्प है जो आपके नेटवर्क के NTLM के साथ काम करने के लिए सही कॉन्फिगर ढूंढने में मदद करता है, यह कोशिश करें:

cntlm -I -M http://test.com

/etc/cntlm.conf में परिणामों को कॉपी और पेस्ट करें

पुनः आरंभ करें


'cntlm' is currently not installed. You can install it by typing: sudo apt-get install cntlm(जो अगर मेरे प्रॉक्सी सही सेट नहीं है, तो पाठ्यक्रम काम नहीं करेगा ...)
TED

2
  1. टर्मिनल खोलें और निम्न पंक्तियों को /etc/apt/apt.conf में जोड़ें।

    gksu gedit /etc/apt/apt.conf
    
  2. इन 2 पंक्तियों को जोड़ें:

    Acquire::http::Proxy "http://user:pass@proxy-host:port/";
    Acquire::ftp::Proxy "http://user:pass@proxy-host:port/";
    
  3. सुरषित और बहार।

    अब apt-get updateऔर एक प्रॉक्सी के पीछे काम करना चाहिए, लेकिन आप देखेंगे कि अभी भी कुछ काम नहीं कर रहा है, यह add-apt-repositoryकमांड है।

    प्रॉक्सी के पीछे भंडार जोड़ने में सक्षम होने के लिए, निम्न कमांड टाइप करें:

    # export https_proxy="http://192.168.1.5:8080"
    # sed -i 's/"keyserver.ubuntu.com"/"hkp://keyserver.ubuntu.com:80"/' /usr/share`/pyshared/softwareproperties/ppa.py`
    

    अब आप LANG = C add-apt-repository का उपयोग करके Lucid और Natty में रिपॉजिटरी जोड़ सकते हैं

    उदाहरण:

    रूट @ ubuntu: ~ # LANG = C ऐड-ऑप्ट-रिपॉजिटरी ppa: motumedia / mplayer-daily

वाया Unixmen


2

एप्ट-गेट अपडेट कैसे लागू करें या उबंटू में स्थापित करें? मैं एक प्रॉक्सी सर्वर के पीछे था और उबंटू स्थापित करने के बाद मैं अपडेट नहीं कर सकता था या कुछ भी स्थापित नहीं कर सकता था। खोज करने के बाद मैंने पाया कि apt पैकेज को बदल दिया गया है, अब apt.conf on / etc / apt निर्देशिका में नहीं है।

मैंने इस मुद्दे को हल करने के लिए जो किया वह निम्नलिखित है:

टर्मिनल और फ़ाइल खोलें

sudo -H gedit /etc/bash.bashrc

और फाइल के नीचे इन 2 लाइनों को जोड़ें:

#proxy 
export http_proxy=http://user:password@host:port/
export ftp_proxy=http://user:pass@host:port/

अब सहेजें और बाहर निकलें, अब आप उबंटू में पैकेज को अपडेट, अपग्रेड या इंस्टॉल कर पाएंगे


मैंने आपके सुझाव के अनुसार निर्यात जोड़ा है। यह अब भी काम नहीं करता है। अब मुझे एक अलग त्रुटि संदेश मिला "extras.ubuntu.com:80 (91.189.88.33) से कनेक्ट नहीं कर सका। - कनेक्ट (110: कनेक्शन का समय समाप्त)"। <br> अजीब बात यह है कि जब मैं फ़ायरफ़ॉक्स वरीयताओं में समान प्रॉक्सी सेटिंग्स दर्ज करता हूं तो मैं एक वेब ब्राउज़ कर सकता हूं।
13

@tommyk क्या आप अपना /etc/apt/source.list पोस्ट कर सकते हैं और यहां अपना प्रश्न अपडेट कर सकते हैं या अपने /etc/apt/source.list से extras.ubuntu.com को हटाने और apt-get update को निष्पादित करने का प्रयास कर सकते हैं
hpp

मैंने ubuntu वेब पेज से एक डिफ़ॉल्ट के साथ अपने स्रोतों.लिस्ट को बदल दिया है। मुझे इस फ़ाइल में सूचीबद्ध प्रत्येक रिपॉजिटरी के लिए अभी भी वही त्रुटि मिली है।
tommyk

2

यह एक मेरे लिए काम कर रहा है !!

(सिस्टम-सेटिंग्स-> नेटवर्क आदि के माध्यम से जीयूआई से मैन्युअल रूप से प्रॉक्सी को जोड़ना चाहिए) लेकिन अगर आप टर्मिनल से एनवी चर निर्यात नहीं करते हैं:

export http_proxy=http://<your proxy url>:<proxy port>

और फिर से https के लिए:

export https_proxy= <usually the same as the http>

-E जोड़ने के लिए सबसे महत्वपूर्ण: चलाने के लिए sudo apt-get installया sudo apt-get updateआपको चलाना चाहिए:

sudo -E <command>

"-E" रूट (sudo) के लिए अपने उपयोगकर्ता पर्यावरण चर का उपयोग करें, उस बात के लिए जो आपने अभी निर्यात किया है http_proxy / https_proxy।

आशा है ये मदद करेगा :)


1

BlueCoat प्रॉक्सी के साथ, मेरे लिए apt.confफ़ाइल के प्रारूप को देखने की आवश्यकता थी:

Acquire::http::proxy "http://Domain%5cUserID:Password@proxy.name.whatever:80/";
Acquire::ftp::proxy "ftp://Domain%5cUserID:Password@proxy.name.whatever:80/";
Acquire::https::proxy "https://Domain%5cUserID:Password@proxy.name.whatever:80/";

^ ^ ^ ^ 3 जी प्रॉक्सी लाइन के बाद खाली लाइन, इस लाइन को दर्ज न करें। ^ ^ ^ ^


1

उबंटू 18.04 को स्थापित करने के बाद यही मुद्दा था। मेरे लिए क्या काम किया गया था:

  1. नेटवर्क सेटिंग्स में नेटवर्क प्रॉक्सी स्क्रीन खोलें
  2. मैन्युअल का चयन करें और दोनों http और https प्रॉक्सी जानकारी जोड़ रहा है
  3. इसके साथ ही होस्ट होस्ट फ़ील्ड पर ध्यान न दें:
    https://extensions.gnome.org*, *.extensions.gnome.org*
  4. उबंटू को फिर से शुरू किया

बिंदु 3 के लिए, सुनिश्चित नहीं है कि उपरोक्त प्रविष्टि काम करती है या नहीं, लेकिन यह चरण मेरे लिए काम करता है


0
  1. Synaptic प्रारंभ करें ( सिस्टम पर जाएँ -> प्रशासन -> Gnome 2 में Synaptic , या डैश में एकता में "synaptic" टाइप करें )।
  2. मेनू बार पर, सेटिंग्स पर क्लिक करें , उसके बाद वरीयताएँ
  3. जब वरीयता विंडो दिखाई देती है, तो नेटवर्क टैब पर क्लिक करें ।
  4. चयन करें मैन्युअल प्रॉक्सी कॉन्फ़िगरेशन रेडियो बटन और आपके प्रॉक्सी जानकारी दर्ज करें।
  5. प्रमाणीकरण जानकारी लागू करने के लिए, प्रमाणीकरण बटन पर क्लिक करें और उपयोगकर्ता नाम और पासवर्ड दर्ज करें।
  6. HTTP प्रमाणीकरण विंडो को बंद करने के लिए ठीक क्लिक करें।
  7. प्राथमिकताएँ विंडो बंद करने के लिए ठीक क्लिक करें।
  8. पैकेज सूचियों को अद्यतन करने के लिए रीलोड बटन पर क्लिक करें।

ध्यान दें कि यह सेटिंग परिवर्तन अपडेट प्रबंधक को भी प्रभावित करेगा ।


0

इस एक-लाइनर समाधान ने मेरे लिए काम किया:

sudo env http_proxy=http://<ip>:<port> apt-get update
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.