缘起
昨天因为要弄jetson nano的环境,好多资源要扶墙,所以正好也整理了一下,在不同的应用上添加代理的方法:
APT
全局代理
在Ubuntu系统中,使用代理有一种通用方式:系统设置 –> 网络 –> 网络代理 –> 应用到整个系统,这里设置的代理是全局代理,整个系统都会走这个代理设置。但一般我们不会这样使用,我们需要对我们指定的工具或软件设置代理。
APT代理
apt-get工具可以使用-o参数来使用配置字符串,或使用-c参数使用指定配置文件。
APT工具集使用的默认配置文件是/etc/apt/apt.conf,打开后发现文件默认是空文件。但是当我们设置了全局代理后,文件的内容变为:
Acquire::http::proxy "http://192.168.3.3:1080/";
Acquire::https::proxy "https://192.168.3.3:1080/";
这里稍微解释一下,这里的代理服务器是我跑了shadowsocks的一台主机,1080是这台主机开放的端口。记得在shadowsocks上开允许局域网接入。
如果只是偶尔用一次:
sudo apt-get -o Acquire::http::proxy="http://192.168.3.3:1080/" update
当然,如果你用man查看过还会发现-c选项
使用-c选项
创建个人配置文件~/apt_proxy.conf,
Acquire::http::proxy "http://192.168.3.3:1080/";
Acquire::https::proxy "https://192.168.3.3:1080/";
使用命令:
sudo apt-get -c ~/apt_proxy.conf update
- 如果我们设置了环境变量APT_CONFIG, 那么apt工具也将使用APT_CONFIG指向的配置文件。
export APT_CONFIG=~/apt_proxy.conf
sudo apt-get update
这是软件包安装使用代理,那么还有使用wget下载有时候也要用。
wget使用代理
为wget使用代理,直接修改/etc/wgetrc,也可以在主目录下创建.wgetrc,并编辑相应内容。
将/etc/wgetrc中与proxy有关的几行复制到~/.wgetrc,然后填写代理的地址和端口
https_proxy = http://192.168.3.3:1080/
http_proxy = http://192.168.3.3:1080/
use_proxy = on
这里 use_proxy = on 开启了代理,如果不想使用代理,每次都修改此文件未免麻烦,我们可以在命令中使用-Y参数来临时设置:
-Y, --proxy=on/off 打开或关闭代理
使用-e参数
wget本身没有专门设置代理的命令行参数,但是有一个"-e"参数,可以在命令行上指定一个原本出现在".wgetrc"中的设置。于是可以变相在命令行上指定代理:
-e, --execute=COMMAND 执行`.wgetrc'格式的命令
例如:
wget -c -r -np -k -L -p -e "http_proxy=http://192.168.3.3:1080" http://www.kernel.org/latest_version
临时使用代理下载比较方便。
git 使用代理
设置代理
git config --global https.proxy http://192.168.3.3:1080
git config --global https.proxy https://192.168.3.3:1080
取消设置
git config --global --unset http.proxy
git config --global --unset https.proxy
socks5
git config --global http.proxy 'socks5://192.168.3.3:1080'
git config --global https.proxy 'socks5://192.168.3.3:1080'
单一定向
只对github.com
git config --global http.https://github.com.proxy socks5://192.168.3.3:1080
取消代理
git config --global --unset http.https://github.com.proxy
目前用到这些,先记录下来,以后有别的再继续补充。
另外,还有个taskset比较好用,可以将任务绑定到CPU执行。
例如: omxplayer -o local xxx.mp4 播放一个影片,产生了一个进程,用ps aux |grep omxplayer发现其pid为40945
那么可以让单个cpu专门处理视频的解码和播放或者让1核,2核,3核工作,留一个核干别的。
taskset -cp 1,2,3 40945
意思就是让这个播放的进程可以使用1,2,3核, 通过htop就可以看到工作效果了。