vkill'blog

“技术本身没有太多价值,掌握了新的思考方式才是真的收获”

局域网架设Avira Antivir v7/v8/v9/v10升级服务器 镜像脚本 (2012.2.22更新)

19:22 , vkill
此代码仅做学习和研究,如造成任何对红伞公司的损失,本人不负责任
请多提意见,我好修复完善
关于脚本实现的原理参见 http://blog.vkill.net/read.php/65.htm 这个帖子里面的cmd脚本

2012.2.22更新,把之前的脚本大概修改到gem里面去了,具体的使用参见 https://github.com/vkill/avira_update_mirrors
gem方式的自定义较强,大家用这个吧



v1.3 (20101118)
增加了可以同步 v10zhtw版 和 v10zhcn版 文件的功能


v1.2 (20100326)
增加了可以同步v10文件的功能


v1.1 (20091212)
修正了v9使用新病毒库后无法读取病毒库版本号的问题
配置文件中使用了最新的官方地址(由晓月提供)

v1.0 (20090702)
修正因下载idx后读取idx最后更新时间出错导致错误

v0.9 (20090701)
加入镜像时使用代理的功能,主要是不用代理连接德国的时候下载老是会超时,如 proxy_addr 值为空的话将使用 http_proxy 变量的设置
加入是否更新antispam.info可设置的功能,因为v8/v9 s的这个特有更新 有些源是不提供的
加入是否更新v7.info可设置的功能,因为个人架设的话是不非要支持v7的
修改 代理如连接失败就退出 为 代理如连接失败则不使用代理

v0.8 (20090630)
经过多次测试,发现当 $RECV_DATA_LEN 设置为1024的时候,连接德国服务器下载老是超时的问题,我修改为5120后正常,所以把这个变量设置放到了配置文件中,这样方便些
增加了 create socket 时的超时处理
把timeout sec的值也放到了配置文件中

v0.7 (20090628)
进一步对timeout做了处理

v0.6 (20090628)
对日志文件文件名做了分类,这样就很直观的可以看出是更新日志还是检查文件md5日志
修正了下载文件时如连接意外关闭时的报错

v0.5 (20090627)
增加下载时显示进度的功能
下载超时的问题应该也解决了,没有条件测试超时

v0.4 (20090622)
增加下载并修改广告,使v8f、v7c可以显示自己的广告,新的广告定义在 v7v8AdNewPage 中
增加命令行执行 ruby-MAAUS.rb checkgzsum 可以直接效验所有gzmd5是否正确
修正了分析info文件时出现分析出的文件少了很多的问题,原因是def createFileList()中 each 那段里面错误的用了break,换为next后正确
修正了v9读取病毒库版本时出错的问题,v9和v8的 vdf.info不同,前面版本是按相同处理的,所以出错了
对idx做了一些注释,方便以后查证

0.3 2009-6-21
修改了读取vdf version的方式,改为直接从info中读取,这样避免了0.2中出现的 Zlib::BufError 错误
因0.2没有在别的机子上试验,发现缺少iconv.dll和zlib1.dll是不能运行的,故把这两个文件一起打包

0.2 2009-6-21
修改了日志记录方式,使日志更容易看懂
增加更新完引擎和病毒库后读取引擎和病毒库版本并写入到xml
修复下载文件后验证gzmd5失败后还继续的问题,问题出在少写了个return

0.1 2009-6-20
基于p-AviraAntiVirupdateV_v3.8修改而来,只是完全用ruby实现的
增加下载文件后即刻效验此文件 gzmd5
修改为可自定义同时更新引擎病毒库、单版本的组件
增加下载完idx文件后检查官方idx是否有更新才继续更新的功能,这功能默认是启用的,如想屏蔽这个功能请修改配置文件中compelUpd 值为 1
增加记录更新日志的功能,便于以后检查更新记录



Last modified by vkill on2012/02/22 16:27
类别:ruby & rails | Tags: , , , , , , | 16 条评论, 5483 次阅读
网友评论(16):
althars
2010/06/02 14:43
你好,能否支持下官方中文下载,因为之前那个贴的附件下载失效,也看不到脚本文件
vkill replied on 2010/06/02 18:28
你好,请提供给我一些完整的v10中文版升级日志文件,打包发送至 vkill.net@gmail.com ,我得根据日志文件来看需要下载哪些 idx 和 info.gz ,谢谢
spark
Email
2010/06/07 14:42
你好,我使用的是晓月汉化版的小红伞,请教这个版本的离线升级包在哪里下载呢,我下了一个V9版本的离线升级包,结果升级总是报错,日志显示是 classic-nt-en.idx不存在,我找下了目录下面,确实没有
vkill replied on 2010/06/11 17:37
你好,这个问题你问问晓月好了,他的blog在这里 http://hi.baidu.com/xiaojinglf/blog
surferbig
2010/07/21 10:19
自架好了服务器。如果不用认证就升级,如果有时间请告诉我一下,我的QQ:791357
vkill replied on 2010/07/21 19:44
没懂你说的意思呢,你说的认证是?
surferbig
2010/07/21 20:33
真不好意思,可能是我表意不清..
小红伞,我用中文9.0 P版的.试用30天..过了30天,就提示认证无效了..我的意思,自己架了服务器,同样还是需要有KEY才可以使用吗.
我搞NOD32 架好服务器..下面客户端升级就不需要用户名和密码了...  小红伞的服务器(自己架的).怎么还认证下面客户端的KEY呢..
vkill replied on 2010/07/22 19:04
你好,自己架设服务器只是同步了官方的文件后,利用nginx反向代理来实现“本地”升级的,认证key那是update.exe自身的功能,所以依然是需要验证key的
surferbig
2010/07/29 14:49
出发才回来。谢谢你的回答,我明白了,看来还得自己破解KEY这一关。。有时间研究吧。。
althars
Email Homepage
2010/11/12 15:21
已经发信给你附上中文版升级的错误日志
如果方便的话简体和繁体一起加上最好
vkill replied on 2010/11/18 23:14
已更新,未详细测试,请您详细测试后如有问题发错误日志到我邮箱,谢谢
tellyt
2010/11/19 09:00
兄弟,1.3好像有问题,提示找不到文件。
vkill replied on 2010/11/20 20:43
啥错误提示?请附上,或者发我 邮箱 vkill.net@gmail.com
(11.20修改) 你好,请重新下载下,或者把 zlib1.dll 重命名为 zlib.dll 就正常了,今天我才发现问题,造成的不便请谅解
althars
Email Homepage
2010/11/19 16:25
我这边测试完全没问题,非常感谢
oydc
2010/11/20 13:13
1.3 压缩文件 zlib1.dll  文件名应该为 zlib.dll
vkill replied on 2010/11/20 20:40
谢谢指出,已经改正。我刚刚查了下,确实应该是zlib.dll ,以前脚本是ruby 1.8.6 写的,1.8.6是 zlib1.dll ,现在用的是 ruby1.8.7,因为我PATH下有 zlib.dll,所以当时没发现这个问题
tellytom
Email
2010/11/22 15:54
IIS6访问所有的*.idx出现无法访问,IIS5上可以,但是我要装在SERVER2003上,VKILL知道怎么解决吗?谢谢
vkill replied on 2010/11/22 21:54
iis 我都忘的差不多了,应该要添加 mime-type 吧。不过你在win上也可以用nginx 啊,所以我建议你换nginx ,upd.avira.net.cn 是win2003 和 nginx ,也一直很正常嘛
Pages: 1/2 First page 1 2 Next page Final page
发表评论:

Nickname: 
Email:
Site URI: