@Lenciel

Mac下后台运行goagent

几年过去了,Goagent是本座翻墙唯一的选择。在Mac上使用它最开始我用了GoAgentX,但使用了一段时间之后发现几个不太满意的地方:

  • 不是简单给GoAgent做了个界面,而是集成了多个翻墙工具,选项挺多挺乱的(可能对其他用户是一个好事)
  • 每次GoAgent更新之后,GoAgentX更新的时间都比较滞后
  • GoAgentX更新之后,经常无法工作,需要做这样那样的调整

但其实用GoAgent我们需要的无非是python proxy.py,有很多办法让它运行起来。本座比较喜欢的是用tmux把这个任务跑在一个detach了的session,如果连接有问题再attach上去看看是什么问题。具体流程如下:

先装tmuxinator,看名字不知道是不是受了ubuntu下面terminator的启发。然后新建一个项目用来跑goagent:

$ mux new goagent

项目配置文件(假设你的goagent放在~/bin/goagent/local):

name: goagent
root: ~/bin/goagent/local


windows:
  - shell: python proxy.py

这样就只需要你在需要翻墙的时候mux goagent一下即可,detach或者attach到这个session也非常方便。当然不使用tmuxinator而是直接用shell脚本写一堆tmux命令也可以达到一样的效果,用tmuxinator是因为本座自己还有一堆别的Django项目的tmuxinator项目。

Fix Python after upgrade to Maverick

升级到最新的osx版本Maverick之后,打开iTerm2就报错:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: No module named virtualenvwrapper.hook_loader
virtualenvwrapper.sh: There was a problem running the initialization hooks.
If Python could not import the module virtualenvwrapper.hook_loader,
check that virtualenv has been installed for
VIRTUALENVWRAPPER_PYTHON=/usr/bin/python and that PATH is
set properly.

敲pip之后也报错:

Traceback (most recent call last):
  File "/usr/local/bin/pip", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 2603, in <module>
    working_set.require(__requires__)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 666, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 565, in resolve
    raise DistributionNotFound(req)  # XXX put more info here
pkg_resources.DistributionNotFound: pip==1.3.1

这坨pkg_resources.DistributionNotFound的错正好前两天装CentOS的机器看到过

运行下面的命令更新了setuptools之后重装了pipvirtualenvvirtualenvwrapper就好了:

wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py
sudo python ez_setup.py
sudo easy_install -U pip