Ответы:
Я использую скрипт для замены различных файлов конфигурации, чтобы легко переключаться между прокси и не-прокси средами. Проблема заключалась в том, что я заменил файл прокси apt.conf пустым файлом apt.conf, который затем проигнорировал apt.
После записи Acquire::http::Proxy "false";
в apt.conf все работало без прокси :)
/etc/apt/apt.conf
Иногда существуют переменные окружения прокси, которые все еще установлены.
Чтобы узнать, выполните следующую команду:
env | grep proxy
Если вы видите какой-то вывод, например:
http_proxy=http://127.0.0.1:1234/
Тогда вам нужно будет сбросить эту переменную.
Для этого выполните следующую команду:
unset http_proxy
Следуйте тому же подходу для всех других записей, таких как https_proxy
.
HTTP_PROXY
(все заглавные), поэтому попробуйте env | grep -i proxy
(-i
означать «без учета регистра»), и посмотрите, есть ли какие-либо выходные данные; стоит попробовать = /. Кроме того, вы можете сделать grep -iR proxy /etc/apt/
? Это ищет слово proxy во всех файлах в /etc/apt/
, потому что прокси иногда устанавливается в файле в /etc/apt/apt.conf.d/
.
/etc/environment
, так что мы можем искать здесь.
Нет только одного места, где apt-get читает конфигурационные файлы. Вы должны работать , 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
также может содержать информацию о прокси. Также это может быть написано с заглавной буквы.
Если вы не хотите apt-get
использовать прокси, используйте apt-get
как:
sudo apt-get -o Acquire::http::proxy=false <update/install>
Глупый способ заставить его работать - отключить прокси на время использования system settings > Network
.
Или удалите настройки прокси из /etc/environment
и/etc/apt/apt.conf
И добавьте обратно ручную настройку прокси, как только вам понадобится прокси обратно.