我的目标:定期把一台服务器上的需要备份的文件压缩,压缩后传输到另一台服务器上备份。
如果没有第二步,在同一台机器上定期备份,这个很容易实现。但考虑安全性,还是同时备份到另一机器上可靠一些。
因为是windows服务器,用"任务计划”就可以定期执行一个批处理,然后在批处理里处理压缩和传输。
传输我使用FTP,FTP服务器也容易建立,我前面介绍过:点击打开链接
FTP服务器上备份目录有两个文件,1.7z和2.7z,分别是大上一次备份和上一次备份。
传输时,先删除1.7z,把2.7z改成1.7z, 再传输备份的压缩文件到FTP服务上,作为2.7z.
批处理文件:
set path=C:\Program Files\7-Zip;%path%
del 2.7z
echo Start: >>log.txt
7z a 2.7z D:\NeedBack
echo End>>log.txt
ftp -s:ftp_cmd.txt 192.168.0.xxx >>log.txt
第一句是设置路径,我要用7-Zip压缩。
第二句是删除上次备份的压缩文件。
第三句记录开始时间。
第四句备份压缩成2.7z。
第五句记录压缩完成时间。
第六句开始FTP传输,ftp_cmd.txt是FTP的命令文件。
ftp_cmd.txt:
user_name
user_psw
status
binary
cd X:/XXX/XXXX
delete 1.7z
rename 2.7z 1.7z
send 2.7z
bye
如果是win2003服务器,要在binary后面加一个hash命令,否则传输大文件会出错。