@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