ทำไม apt-get เสมอโดยใช้พรอกซีแม้ว่าจะไม่มีการกำหนดค่าพร็อกซี


26

ฉันกำลังพยายามปิดใช้งานพร็อกซีสำหรับapt-getแต่ดูเหมือนว่าapt-getจะเป็นเพราะการกำหนดค่าพร็อกซีจากที่อื่นนอกเหนือจาก/etc/apt/apt.confเพราะแม้ว่าapt.confไฟล์จะว่างเปล่า (และพร็อกซีระบบตั้งไว้ที่None) ก็ยังพยายามเชื่อมต่อกับพร็อกซี

ใครมีความคิดบ้าง

คำตอบ:


32

ฉันใช้สคริปต์เพื่อแทนที่ไฟล์การกำหนดค่าต่างๆเพื่อสลับระหว่างสภาพแวดล้อมพร็อกซีและสภาพแวดล้อมที่ไม่ใช้พร็อกซีได้อย่างง่ายดาย ปัญหาคือฉันแทนที่ไฟล์ apt.conf proxy ด้วยไฟล์ apt.conf ที่ว่างเปล่าซึ่ง apt นั้นไม่สนใจ

หลังจากเขียนAcquire::http::Proxy "false";ลงใน apt.conf แล้วจะทำงานโดยไม่ต้องใช้พรอกซี :)


มันใช้งานได้! ปิดใช้งานพรอกซีด้วย apt.conf
Chu-Siang Lai

1
กรณีของฉันทำงานได้เพียงแค่ลบไฟล์ 95proxy.conf ออกจาก /etc/apt/apt.conf.d/ แต่ดีกว่าไปที่ชัดเจน: D ขอบคุณ
m3nda

ไฟล์ apt.conf นี้อยู่ที่ไหน
Crotchet หายไป

@LostCrotchet/etc/apt/apt.conf
Ahatius

12

บางครั้งมีตัวแปรสภาพแวดล้อมพร็อกซีที่ยังคงตั้งค่าอยู่

หากต้องการค้นหาให้ทำคำสั่งต่อไปนี้:

env | grep proxy

หากคุณเห็นผลลัพธ์บางตัวอย่างเช่น:

http_proxy=http://127.0.0.1:1234/

จากนั้นคุณจะต้องยกเลิกการตั้งค่าตัวแปรนี้

โดยทำตามคำสั่งต่อไปนี้:

unset http_proxy

ทำตามวิธีการเดียวกันสำหรับทุกรายการอื่น ๆ https_proxyเช่น


1
ขอบคุณสำหรับคำใบ้ขออภัยทั้ง http และ https proxy ว่างเปล่า: \
Ahatius

อืมมม น่าสนใจ แม้ว่าฉันจะสงสัย แต่อาจเป็นตัวแปรHTTP_PROXY(ตัวพิมพ์ใหญ่ทั้งหมด) ดังนั้นลองใช้env | grep -i proxy (-iความหมาย "case insensitive") และดูว่ามีผลลัพธ์หรือไม่ มันคุ้มค่าที่จะลอง = / นอกจากนี้คุณสามารถทำgrep -iR proxy /etc/apt/อะไร การค้นหานี้พร็อกซี่คำในไฟล์ทั้งหมดภายใต้เพราะพร็อกซี่บางครั้งการตั้งค่าในแฟ้มภายใต้/etc/apt/ /etc/apt/apt.conf.d/
Alaa Ali

นอกจากนี้ยังไม่เกี่ยวกับพร็อกซีที่เป็นตัวพิมพ์ใหญ่ทั้งหมด การดำเนินการคำสั่ง grep ยังไม่เปิดเผยไฟล์อื่นใดที่มีการกำหนดค่าพร็อกซี
Ahatius

ตกลงฉันคิดว่าฉันเข้าใจแล้ว ฉันใช้สคริปต์เพื่อสลับไฟล์การกำหนดค่าทั้งหมดสำหรับพร็อกซี่ ปัญหาคือฉันแทนที่ apt.conf ด้วยไฟล์เปล่า Apt จะเห็นได้ชัดว่าโหลดการกำหนดค่าพร็อกซีล่าสุดเสมอเพราะค่าพร็อกซีไม่ได้ถูกตั้งค่าเป็นเท็จ ขอบคุณสำหรับความพยายามของคุณ!
Ahatius

Maype proxy env ได้ตั้งค่าไว้/etc/environmentเพื่อให้เราสามารถมองหาที่นี่
Chu-Siang Lai

4

ไม่เพียงที่เดียวเท่านั้นที่มีไฟล์การกำหนดค่า apt-get read คุณควรเรียกใช้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


2

เป็นไปได้ว่าตัวแปรสภาวะแวดล้อม http_proxy ถูกตั้งค่าเป็นพร็อกซีบางตัว ลองล้างตัวแปร (หรืออย่างน้อยดูว่ามีค่า)


2

system settings > Networkวิธีที่โง่ของการทำงานมันเป็นพร็อกซี่ปิดการใช้งานในขณะที่ใช้

หรือลบการกำหนดค่าพรอกซีจาก/etc/environmentและ/etc/apt/apt.conf

ป้อนคำอธิบายรูปภาพที่นี่

และเพิ่มการกำหนดค่าพร็อกซีด้วยตนเองกลับเมื่อคุณต้องการพร็อกซี


วิธีนี้ใช้ได้ผลและง่ายต่อการติดตาม :)
Ankit Shubham
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.