前言
终于用上了Ubuntu,浏览器没法用谷歌等网;终端下载文件太慢;Github克隆速度不忍直视。本教程基于神器Shadowsocks,实现了浏览器和终端的网络加速,废话少说,下面一一道来。
软件安装和使用
Linux平台的SS有Python和GUI两种形式,个人推荐后者,比较方便直观,截取官方网站(https://shadowsocks.org/en/index.html)的安装方法如下:
sudo add-apt-repository ppa:hzwhuang/ss-qt5
sudo apt-get update
sudo apt-get install shadowsocks-qt5
安装好后相当于有了水管,那么水从哪里来呢?我这里仅仅为需要的同学而推荐一个还算靠谱的提供商。
界面大概如下(忽略我的延迟时间,这是意外):
为浏览器设置代理
在Ubuntu系统下,只安装SS,Chrome浏览器依然不能访问谷歌等网站,原因在于缺少SwitchyOmega扩展。
SwitchyOmega的下载安装
正常情况下你肯定进不去Chrome商店,只能下载插件手动安装:https://github.com/FelisCatus/SwitchyOmega/releases/download/v2.3.19/SwitchyOmega.crx,Github的下载速度忍忍就好。
SwitchyOmega的配置
这款插件的配置过程比较复杂,如果想手动配置,具体可以参看这个教程网站(http://www.ihacksoft.com/chrome-switchyomega.html)
这里,我也准备了一个更为简单的方法,直接导入我的配置文件,下载地址:http://download.csdn.net/detail/jesse_mx/9658315
到这里,应该可以访问谷歌等网站了,如果你用的是Firefox,道理一样的。
为终端设置代理
安装polipo软件
sudo apt-get install polipo
修改配置文件
config文件是只读的,要想修改里面的数据,需要获得最高权限。
cd /etc/polipo/
sudo chmod 777 config #为config文件申请最高权限
vi /etc/polipo/config #打开进行编辑
原文件中有两句话,那么需要新加入3句话:
socksParentProxy = "localhost:1080"
socksProxyType = socks5
logLevel=4
ps:这里建议修改文件后恢复本来的权限,这是个好习惯。
关闭和启动polipo
关闭软件,让配置生效,然后重启。
sudo service polipo stop
sudo service polipo start
验证和使用
安装完成后使用下面代码验证效果:
curl ip.gs #查询你的IP地址和地理信息
http_proxy=http://localhost:8123 curl ip.gs
第二条语句得到的ip地址已经不是中国的了:“当前 IP:103.204.172.117 来自:日本大阪府大阪 starrydns.com”,说明安装成功。
上面实验说明了想要为某个命令加上代理,就在前面使用:http_proxy=http://localhost:8123
ps:8123是polipo的默认端口,如有需要,可以修改成其他有效端口。
设置别名
每一次都输入这么一串命令实在太不人性化,解决方法就是给这个命令一个缩写的别名,比如“hp”。
vi .bashrc
打开配置文件,在最后面加上一句:
alias hp="http_proxy=http://localhost:8123"
关闭文件,执行下面代码:
source ~/.bashrc
这样,hp就可以代表之前很长的命令,试验一下:
hp curl ip.gs
当前 IP:103.204.172.117 来自:日本大阪府大阪 starrydns.com ,bingo!
为当前会话设置全局代理
难道要在每条联网命令前面都加上“hp”?当然不会,以下操作可以让当前终端窗口的所有联网命令都经过代理,一条命令,接管所有:
export http_proxy=http://localhost:8123 #当前终端使用代理
unset http_proxy #当前终端取消代理
更为长久的代理设置
如果我想Ubuntu终端一直处于代理状态,能不能做到呢?这也是可以的,以下设置可以让本机的终端一直拥有代理能力,设置好后就完全不用操心了,类似于写入环境变量的操作。
方法很简单,将以下语句:
export http_proxy=http://localhost:8123
加入.bashrc文件末尾,再执行source ~/.bashrc即可
为Git设置代理
刚才的一大堆设置对Git命令没有作用,为此我们要单独设置。
事实上在git命令最后加参数可以实现代理:
--config http.proxy=localhost:8123
但我们仍然觉得不方便,还是起个别名吧,比如就叫“gp”。
在.bashrc文件末尾加入这一句:
gp=" --config http.proxy=localhost:8123"
执行source ~/.bashrc
以后,在git clone命令后面加入$gp就可以加快克隆速度。
git clone https://github.com/gmarik/Vundle.vim.git $gp