|
楼主 |
发表于 2013-4-21 15:39:24
|
显示全部楼层
本帖最后由 lokey 于 2013-4-21 15:55 编辑
不暂停使用网络也能屯包的方法
思路:利用代理软件拦截各项目上传已完成任务的请求,从而达到不暂停使用网络也能屯包
优点:不再怕屯包不足,屯包时不影响其他项目,局域网内可统一控制各机器的屯包
缺点:需要一点点的时间来配置
配置步骤:
1. 找一款代理软件,这里我使用Privoxy(http://www.privoxy.org/),解包之。
2. 配置监听地址,用文本编辑器打开Privoxy目录下的config.txt文件,搜索“listen-address 127.0.0.1:8118”,若本机还有使用8118端口的软件,则把8118端口改为其他端口;若局域网内想控制其他机器的屯包,则把127.0.0.1改为局域网内分配给本机的IP地址。
3. 配置action,用文本编辑器打开Privoxy目录下的user.action文件,在文件结尾加入以下代码,第一行为action,紧接着的几行为各项目上传任务的URL(#开头为注释),这里给出cc和wcg上传任务的URL,知道五项赛的竞赛项目后需修改为相应项目的URL。
如何找到这些URL?一般在BOINC的ProgramData目录下,以sched_reply_{项目网址}.xml命名的文件,搜索“file_upload_handler”就能找到,这里有一个前提,就是该项目需上传过任务;请各位根据自己所跑项目把候选项目的上传URL找出并贴出来,以方便大家。
ps:有些项目使用https连接(如wcg),privoxy无法识别上传URL中的路径部分(被加密了),故需用域名部分替代;- { +block{stop!} }
- #Collatz Conjecture
- boinc.thesonntags.com/collatz_cgi/file_upload_handler
- #World Community Grid
- grid.worldcommunitygrid.org
复制代码 4. 将Privoxy安装为系统服务并随系统启动(windows,其他系统参考这里),cmd privoxy.exe --install:privoxy,到windows服务程序里把privoxy服务设为自动并启动。
5. 到Boinc中设置HTTP代理,自己根据步骤2设置,如地址:127.0.0.1,端口:8118
如何屯包:
把Boinc中任务缓存调大,基本步骤与10楼中dianci给出的例子一样,只需将“暂停项目A使用网络”替换为“将项目A的上传URL添加到user.action中”,同样的将“恢复项目A使用网络”替换为“将项目A的上传URL从user.action中移除(注释掉)”
|
评分
-
查看全部评分
|