思路过程:
一、构建一台WEB服务器,并指定一个下载目录(当然FTP也可以)
二、本地写个脚本,定时从WEB服务器上下载脚本。(发散下,我怎么确定是不是当天的任务?下载文件名改成当天日期就成。区分了吧)
三、下载后执行脚本(继续发散,我可以以包的方式安装,里面加个installtool就行,installtool作为我们安装的脚本,当然也可以全脚本的如wget http://*/nginx.tar.gz 然后再解压啥的)
煮酒品茶:这样就完成一次批量更新。郁闷,那我想单个主机更新怎么办?或者某几个要更新怎么办?(继续发散思维,我可以在本地脚本上加这么一句wget http://ip/本机IP+当天时间.tar.gz),那么是不是实现了我们单机更新的目的?
缺点:WEb服务器被日了,并且规则被未授权用户给知晓了。那全部死了,当然如果你web服务器做不到安全,那么你的产品线也不够安全。
思路讲完了,那我们实践一下呗,最简单的啊。随便装个包。
----------------------------------------
本地脚本:
vim updatetool
- i=`date +%Y-%m-%d`
- wget http://192.168.100.80/192.168.100.89-installtool-$i.tar.gz
- tar -zxvf 192.168.100.89-installtool-$i.tar.gz
- chmod +x 192.168.100.89-installtool-$i
- ./192.168.100.89-installtool-$i
- wget http://192.168.100.80/installtool-$i.tar.gz
- tar -zxvf installtool-$i.tar.gz
- chmod +x installtool-$i
- ./installtool-$i
-------------------------------------------
chmod +x updatetool
WEB服务放数据
-----------------------------------------------------------
IP包为往 ~/test/1.txt 写数据为hello I'm 192.168.100.89
>echo "hello I'm 192.168.100.89">~/test/1.txt
批量包为往 ~/test/2.txt 写数据为Hello I'm installtoll
>echo "hello I'm installtool">~/test/2.txt
-----------------------------------------------
- [root@localhost ~]# cat 192.168.100.89-installtool-2012-04-26
- echo "hello I'm 192.168.100.89">~/test/1.txt
- [root@localhost ~]# cat installtool-2012-04-26
- echo "hello I'm installtool">~/test/2.txt
-------------------------------------------------------------
--------------------------------------------
最终效果
[root@localhost ~]# ls
192.168.100.89-installtool-2012-04-26 installtool-2012-04-26.tar.gz
192.168.100.89-installtool-2012-04-26.tar.gz test
anaconda-ks.cfg test2
Desktop test5
install.log time
install.log.syslog updatetool
installtool-2012-04-26
[root@localhost ~]# ll test
total 8
-rw-r--r-- 1 root root 25 Apr 26 00:33 1.txt
-rw-r--r-- 1 root root 22 Apr 26 00:33 2.txt
[root@localhost ~]# cat test/1.txt
hello I'm 192.168.100.89
然后再添加任务计划就好了,每天零晨三点执行这个文件
[root@localhost ~]# crontab -l
- 0 3 * * * sh ~/updatetool
煮酒品茶:至于细节如何更改是个人的事情,这样就好像了个远程木马一样,服务端放啥客户端就更新啥。
最后:还是得感谢最有爱的
dn833 哈哈,送你一个情人!
本文转自 煮酒品茶 51CTO博客,原文链接:http://blog.51cto.com/cwtea/845330,如需转载请自行联系原作者