Ubuntu18.04的apt、ppa、vscode、proxychains代理使用

网上好多的教程有一些片面,下面的这个博客讲的很清楚

参考:https://www.cnblogs.com/babykick/archive/2011/03/25/1996004.html

一般使用代理时,设置了如下:

Ubuntu18.04的apt、ppa、vscode、proxychains代理使用_第1张图片

但是以火狐浏览器为例,如果里面设置不使用代理,采用直接连接,那么也不会代理成功。

Ubuntu18.04的apt、ppa、vscode、proxychains代理使用_第2张图片

这时,我们发现,Ubuntu18.04采用两层控制代理.1.<设置里面的那个代理>+2.<软件自身的代理>。

如果你的apt不好使,那么应该时apt没有设置代理

1.修改配置文件

sudo gedit /etc/apt/apt.conf

添加:(也就是你的代理服务器ip+端口)

Acquire::http::proxy "http://127.0.0.1:1080/";
Acquire::https::proxy "https://127.0.0.1:1080/";
Acquire::socks::proxy "socks://127.0.0.1:1080/";

2.环境变量的设置(vscode设置这个好使)

sudo gedit ~/.bashrc添加:
export http_proxy="http://127.0.0.1:1080" 
export https_proxy="https://127.0.0.1:1080" 
export socks_proxy="socks://127.0.0.1:1080"

保存:source ~/.bashrc

以上是永久设置apt的代理,可以使用sudo apt -o Acquire::http::proxy="http://192.168.206.197:8123/" install cuda临时使用。

 

而且用了代理添加ppa源也出现问题,用proxychains也不好使,可以使用以下命令安装Ubuntu系统快照timeshift

sudo -E add-apt-repository ppa:teejee2008/ppa

sudo apt-get update

sudo apt-get install timeshift

-E选项将保留上面定义的env变量,并将启用代理使用。

vscode的代理,如果不设置,由环境变量控制

apt代理细节说明

如果以上的操作没有起作用,还有一种可能:确保你的机器本身是联网的(即不通过代理设置就可以上网),这种情况,通过以上的操作正常sudo apt update是没问题的但是果是你这台直接上不了网,是通过代理才可以上网,这时就算通过设置上面的apt代理,sudo apt update也是会出错的,因为apt的代理与浏览器等的代理是不一样的,这时使用proxychains,(这时下载,可以通过临时wifi上网)

sudo apt install proxychains

sudo gedit /etc/proxychains.conf

修改文档最后的代理

这时可以使用sudo proxychains apt update,这时apt不直接上网,而是通过proxychains的代理上网(这样也就完成的代理加速下载的功能,这时是不用设置sudo gedit /etc/apt/apt.conf,如果设置反而会慢很多)

补充:

如果是局域网内的ipv6互联,假如局域网中某一机器通过局域网中的另一个机器代理上网,这时sudo apt update,会出现无法解析域名,但是网上通常的,加入dns服务器地址,比如:
sudo gedit /etc/resolv.conf
nameserver 8.8.8.8

这个可能不好使,这时需注意是否未设置ipv6的网关和DNS(在有线网络设置),没有网关,直接出不去网,没有DNS解析不了,这时,其实是该机器通过ipv6直接与外界连接,而不是走了代理

参考:https://askubuntu.com/questions/971877/cannot-add-ppa-user-or-team-does-not-exist

你可能感兴趣的:(#,ubuntu18.04,网络配置)