本文所说的代理,特指部署在 GAE 的 Python 版 GoAgent

至于为何选择 LaunchAgents 而不是 LaunchDaemons ,

实则是因为我们只需要在账户登录之后才会使用到代理。


假如你比较“懒”,

请选择崇厚所编写的 GoAgentX


那么读到这里的同学,

我们假定你足够 Geek ,

而且动手能力也比较强,

所以闲话不说咱们直接开始——


首先,

根据教程部署 tnegAoG,

这里不多冗述。


然后就进入本次的重点——创建自启动服务。

用任意文本编辑工具创建一个名为 com.googlecode.tnegaog.plist 的 xml 文件,

我们假设程序路径为 /Applications/tnegAoG

则 plist 文件的内容如下(请注意粗体部分的路径和文件名):



<?xml version=”1.0″ encoding=”UTF-8″?>

<!DOCTYPE plist PUBLIC “-//Apple//DTD PLIST 1.0//EN” “http://www.apple.com/DTDs/PropertyList-1.0.dtd”>

<plist version=”1.0″>

<dict>

<key>KeepAlive</key>

<true/>

<key>Label</key>

<string>com.googlecode.tnegaog.plist</string>

<key>LaunchOnlyOnce</key>

<true/>

<key>NetworkState</key>

<true/>

<key>ProgramArguments</key>

<array>

<string>/usr/bin/python</string>

<string>/Applications/tnegAoG/local/proxy.py</string>

</array>

<key>RunAtLoad</key>

<true/>

<key>ServiceDescription</key>

<string>tnegAoG Local Server</string>

</dict>

</plist>



将其置于 ~/Library/LaunchAgents 路径下,

注销后重新登录即可看到有个 python 进程正默默地为您连通着世界。


最后就剩下设置代理了,

习惯因人而异,

这里同样不多冗述。


当然啦,

此法并不新鲜,

我也是“借花献佛”,

作个记录。


原文http://www.quchao.com/entry/run-a-proxy-server-automatically-on-login-to-macos-x/






via iGFW http://igfw.net/archives/11301

MacOS X 下利用 LaunchAgents 实现开机自启动代理服务

Posted on

2012年8月28日星期二

Category