我正在使用 Ubuntu 22.04.3 LTS。我过去曾配置过代理,但我的工作环境发生了变化,我不再需要代理了。我删除了我能找到的代理设置的每个实例。
一切运行良好,包括 Apt 或 wget,我可以执行 apt 更新并成功升级。
但,
当我打开软件更新GUI 应用程序,转到附加驱动程序,我可以看到我想安装的 nvidia 专有驱动程序列表。很好。但是,如果我单击安装 nvidia-driver-535,则会收到一条错误消息:
该消息包含对我的旧代理 IP 地址的引用:10.2.64.3:3128
但是如果我使用以下命令安装该包:
sudo apt install nvidia-driver-535
它运行得很好。
我认为配置文件中某个地方有对该代理的引用。因此,我运行了:
sudo grep -r / -e '10\.2\.64\.3'
它发现有些文件包含该字符串,但在配置文件或某些日志文件的一部分中,该字符串总是被注释掉。没有相关性。
然后我使用 dconf-editor 来查找代理相关内容的实例,但什么也没有。
没有环境变量:
env | grep -i proxy
不返回任何内容。
我不知道软件更新存储其代理数据...
如何删除代理设置软件更新应用程序 ?
答案1
好的,经过进一步挖掘,我发现......
我必须看看软件属性这里:
https://git.launchpad.net/ubuntu/+source/software-properties/tree/
看起来该工具正在使用 PackageKitGlib 1.0 来执行包安装操作。
PackageKitGlib 1.0 将其代理配置存储到位于此处的 SQLite 数据库中:
/var/lib/PackageKit/transactions.db
通过使用 SQLite 浏览器打开该数据库,我发现代理设置存储在这里。我删除了代理表的条目,它就起作用了!
但我确信当使用 gnome GUI 删除代理设置时,这应该会以某种方式自动更新......