Apt-get हमेशा प्रॉक्सी का उपयोग क्यों कर रहा है, हालांकि कोई प्रॉक्सी कॉन्फ़िगर नहीं है?


26

मैं प्रॉक्सी को अक्षम करने का प्रयास कर रहा हूं, apt-getलेकिन ऐसा लगता है कि apt-getयह कहीं और से कहीं और से प्रॉक्सी कॉन्फ़िगरेशन हो गया है /etc/apt/apt.conf, क्योंकि हालांकि apt.confफ़ाइल खाली है (और सिस्टम प्रॉक्सी सेट है None) यह अभी भी प्रॉक्सी से कनेक्ट करने की कोशिश कर रहा है।

किसी को एक विचार मिला?

जवाबों:


32

प्रॉक्सी और गैर-प्रॉक्सी एनवायरनमेंट के बीच आसानी से स्विच करने के लिए मैं विभिन्न कॉन्फ़िगरेशन फ़ाइलों को बदलने के लिए स्क्रिप्ट का उपयोग कर रहा हूं। समस्या यह थी कि मैंने प्रॉक्सी apt.conf फ़ाइल को खाली apt.conf फ़ाइल से बदल दिया, जिसे apt ने अनदेखा कर दिया।

Acquire::http::Proxy "false";Apt.conf में लिखने के बाद यह प्रॉक्सी के बिना काम किया :)


यह काम है! Apt.conf के साथ प्रॉक्सी अक्षम करें।
चू-सियांग लाई

1
Im मेरा मामला बस 95proxy.conf फ़ाइल को /etc/apt/apt.conf.d/ से हटाने का काम करता है, लेकिन स्पष्ट रूप से बेहतर है: D धन्यवाद।
m3nda

यह apt.conf फ़ाइल कहाँ है?
क्रॉचेट खो दिया

@ लॉस्ट क्रॉचेट/etc/apt/apt.conf
एशियस

12

कभी-कभी, प्रॉक्सी वातावरण चर होते हैं जो अभी भी सेट हैं।

यह जानने के लिए, निम्नलिखित कमांड करें:

env | grep proxy

यदि आप कुछ आउटपुट देखते हैं, उदाहरण के लिए:

http_proxy=http://127.0.0.1:1234/

फिर आपको इस वेरिएबल को अनसेट करना होगा।

ऐसा करने के लिए, निम्नलिखित कमांड निष्पादित करें:

unset http_proxy

अन्य सभी प्रविष्टियों के लिए समान दृष्टिकोण का पालन करें, जैसे कि https_proxy


1
संकेत के लिए धन्यवाद, दुर्भाग्य से http और https दोनों प्रॉक्सी खाली हैं: \
Ahatius

हम्म। दिलचस्प। हालाँकि मुझे इसमें संदेह है, लेकिन शायद चर HTTP_PROXY(सभी कैप्स) है, इसलिए env | grep -i proxy (-i"केस असंवेदनशील" अर्थ का प्रयास करें ), और देखें कि क्या कोई आउटपुट है; यह एक कोशिश के लायक है = /। इसके अलावा, आप कर सकते हैं grep -iR proxy /etc/apt/? यह सभी फ़ाइलों के अंतर्गत प्रॉक्सी शब्द की खोज करता है /etc/apt/, क्योंकि प्रॉक्सी कभी-कभी किसी फ़ाइल के अंतर्गत सेट की जाती है /etc/apt/apt.conf.d/
अला अली

यह भी प्रॉक्सी सभी टोपियां होने के साथ नहीं है। Grep कमांड को निष्पादित करने से किसी भी अन्य फ़ाइल को प्रकट नहीं किया गया जिसमें प्रॉक्सी कॉन्फ़िगरेशन है।
एंथियस

ठीक है, मुझे लगता है कि मैं समझ गया। मैं प्रॉक्सी के लिए सभी कॉन्फ़िगरेशन फ़ाइलों को स्विच करने के लिए स्क्रिप्ट का उपयोग कर रहा हूं। समस्या यह थी कि मैंने apt.conf को एक खाली फ़ाइल से बदल दिया। Apt फिर स्पष्ट रूप से हमेशा अंतिम प्रॉक्सी कॉन्फ़िगरेशन को लोड करता है, क्योंकि प्रॉक्सी मान गलत पर सेट नहीं था। आपके प्रयासों के लिए वैसे भी धन्यवाद!
एंथियस

मईपे प्रॉक्सी एनवी में सेटिंग है /etc/environment, इसलिए हम यहां देख सकते हैं।
चू-सियांग लाई

4

केवल एक ही स्थान नहीं है जहाँ उपयुक्त-विन्यास फ़ाइल पढ़ें। आपको चलना चाहिए grep -i proxy /etc/apt/apt.conf.d/*और यह आपको सटीक फ़ाइल देगा जिसमें प्रॉक्सी सेटिंग्स हैं (यह updateइसके बजाय केवल एक उदाहरण है proxy:

grep -i update /etc/apt/apt.conf.d/*
/etc/apt/apt.conf.d/20apt-show-versions:// When Apt's cache is updated (i.e. apt-cache update)
/etc/apt/apt.conf.d/20packagekit:// Whenever dpkg is called we might have different updates
/etc/apt/apt.conf.d/20packagekit:// i.e. if an user removes a package that had an update
/etc/apt/apt.conf.d/20packagekit:"/usr/bin/test -e /usr/share/dbus-1/system-services/org.freedesktop.PackageKit.service && /usr/bin/test -S /var/run/dbus/system_bus_socket && /usr/bin/gdbus call --system --dest org.freedesktop.PackageKit --object-path /org/freedesktop/PackageKit --timeout 1 --method org.freedesktop.PackageKit.StateHasChanged cache-update > /dev/null; /bin/echo > /dev/null";
/etc/apt/apt.conf.d/20packagekit:// When Apt's cache is updated (i.e. apt-cache update)
/etc/apt/apt.conf.d/20packagekit:"/usr/bin/test -e /usr/share/dbus-1/system-services/org.freedesktop.PackageKit.service && /usr/bin/test -S /var/run/dbus/system_bus_socket && /usr/bin/gdbus call --system --dest org.freedesktop.PackageKit --object-path /org/freedesktop/PackageKit --timeout 1 --method org.freedesktop.PackageKit.StateHasChanged cache-update > /dev/null; /bin/echo > /dev/null";

यह पर्याप्त नहीं है, फ़ाइल /etc/apt/apt.confमें प्रॉक्सी जानकारी भी हो सकती है। साथ ही इसे बड़े अक्षर के साथ लिखा जा सकता है।
kap

3

यदि आप apt-getप्रॉक्सी का उपयोग नहीं करना चाहते हैं , तो apt-getनिम्न का उपयोग करें :

sudo apt-get -o Acquire::http::proxy=false <update/install> 

2

यह संभव है कि वातावरण चर http_proxy कुछ प्रॉक्सी पर सेट हो। चर को साफ़ करने का प्रयास करें (या कम से कम यह देखें कि क्या इसका कोई मूल्य है)


2

इसे काम करने का मूर्खतापूर्ण तरीका उपयोग करने के थोड़ी देर के लिए प्रॉक्सी को अक्षम कर देता है system settings > Network

या फिर से प्रॉक्सी config हटाने /etc/environmentऔर/etc/apt/apt.conf

यहाँ छवि विवरण दर्ज करें

और प्रॉक्सी बैक करने के लिए एक बार मैन्युअल प्रॉक्सी कॉन्फिगर को वापस जोड़ें।


यह काम किया है और वास्तव में पालन करने के लिए सरल है :)
अंकित शुभम
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.