如果未通过代理连接,如何将终端中的代理重置为自动


9

我试图通过一些命令来重置终端的代理,但没有发生,并自动切换回该代理172.16.0.16(显然是我的大学代理)。

我检查了系统设置。我不明白为什么这种情况经常发生。
请全面。此外,我还想知道如何绕过代理服务器,因为我无法访问任何ubuntu信息库,因为它们在我的大学的代理设置中被阻止,就像Ubuntu的主页一样。

谢谢你的时间。 终端快照

因为 sudo ls /etc/apt/apt.conf.d/ 它显示了一组未列出代理的选项。我在12.10上,如果这对您有帮助的话。在输入上述命令后,我将终端快照了。 输入ls命令

Answers:


20

当您从GUI(网络设置)设置代理时,/etc/environment以及/etc/apt/apt.conf当您从GUI设置代理时,Ubuntu 12.10都将设置代理设置。

检查您的apt设置

grep -Hnri proxy /etc/apt/

将以apt以下格式列出当前使用的代理设置。

filename:linenumber:proxy-setting

如果您看到任何输出,则对应于apt的代理设置。必须清除它们。

sudoedit <filename>

将允许您编辑相应的配置文件。将现有内容复制到某处,以防您需要还原它们,然后删除或注释看起来像这样的行
Acquire::<protocol>::proxy=<your proxy here>
(在行的开头添加//以注释该行。注释行将被忽略。)

保存文件,关闭文本编辑器,然后重试。如果问题仍然存在,

检查全局默认环境。

grep proxy -i /etc/environment

应该列出全局应用的所有代理设置。如果您需要清除它们,

sudoedit /etc/environment

将启动文本编辑器。以#开头的行将被忽略,因此在提及代理设置的那些行之前添加#。保存文件,然后重试。

清理用户环境

系统范围的配置很可能是干净的,但是apt正在从用户环境中获取代理设置。sudo在某些配置中,默认情况下,或者在显式地-E作为选项传递时,会保留环境。

env | grep -i proxy

应该列出所有当前的环境代理设置。unset <variable>可用于取消设置或清除变量。取消设置所有<protocol>_proxy变量。如果它们会自动被设置,你可以从注释掉相应的条目~/.profile~/.bashrc~/.pam_environment

(那些是包含条目的最常见文件。可以使用一次搜索所有文件grep -Hni proxy ~/.profile ~/.bashrc ~/.pam_environment


太糟糕了,它们都不起作用。我正在通过宽带连接,仅浏览器可以运行。
therealnube 2012年

试试我更新的答案。注意igrep 的选项,该选项不区分大小写。
Mahesh

好吧,我还没有完成清理用户环境的最后一步,但是今天看来,它工作起来很神奇。可能一些代码本身已修复:| 如果我不得不撤消该操作怎么办?将来在网络GUI中进行更改是否会再次分配所需的代理?
therealnube 2012年

是。从GUI更改设置将还原以上所有更改。只要确保在整个系统中应用它们即可。
Mahesh 2012年

我尝试清除变量,但是当我关闭并重新启动终端时,我所有的代理值都重置为192.168.2.1:8080-为什么会发生这种情况?
Sheharyar

3

http://www.iasptk.com/how-to-change-system-proxy-settings-from-terminal-in-ubuntu-1204precise

如何在Ubuntu 12.04中从终端更改系统代理设置(精确)

配置Ubuntu桌面/笔记本电脑以从终端使用代理服务器。

在Ubuntu 12.04中从终端启用代理设置

打开终端并运行以下命令

注意:-用您的设置更改主机IP和端口设置。

gsettings set org.gnome.system.proxy.socks host '192.168.1.1′
gsettings set org.gnome.system.proxy.socks port 8080
gsettings set org.gnome.system.proxy mode 'manual'

在Ubuntu 12.04中从终端禁用代理设置

gsettings set org.gnome.system.proxy mode 'none'

1
这将是设置/清除代理的首选方式。GUI(网络代理)通过使用Gsettings绑定完成了等效的工作。但是,这将设置用户级别的条目,并且apt可能不会受到影响。
Mahesh 2012年

0

app-get 代理设置存储在 /etc/apt/apt.conf.d/20proxy

文件名也可能类似于20proxy

注意:您需要root获得许可才能在处更改或删除文件/etc/apt/apt.conf.d

这可能是可行的:

$ sudo ls /etc/apt/apt.conf.d/

00aptitude    15update-stamp  20proxy                99update-notifier
00trustcdrom  20archive       
01autoremove  20changelog     50unattended-upgrades
10periodic    20dbus          70debconf

$ sudo mv /etc/apt/apt.conf.d/20proxy /etc/apt/apt.conf.d/20proxy~

如果您无法直接找到该文件,请进行以下搜索Acquire::http::Proxy

查找/etc/apt/apt.conf.d | xargs grep“ Acquire :: http :: Proxy`

由于设置代理的文件内容应如下所示:

获取:: http ::代理“ http:172.16.0.16:3142”;

有时会为其设置环境变量http_proxy,因此请执行以下操作:

导出http_proxy =


先生,这无济于事,请逐步引导我。我无法访问列表,该命令$sudo ls /etc/apt/apt.conf.d/向我显示了另一个列表
therealnube 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.