Answers:
我正在使用脚本替换不同的配置文件,以便轻松地在代理和非代理环境之间切换。问题是我将代理apt.conf文件替换为一个空的apt.conf文件,该文件随后被忽略。
写入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/
吗?这会在下的所有文件中搜索代理词/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
并在需要代理后再添加手动代理配置。