linux svn定时备份文件 + 文件上传
来源:互联网 发布:ubuntu磁盘分区 编辑:程序博客网 时间:2024/05/17 08:16
需求比较简单,因为svn库比较小,才10多个g,每天定时备份一个全量的svn文件,上传到另外一个服务器上就可以了,
(按照周一到周五自动备份,然后ftp上传覆盖更新)
1、先创建一个svn.pl备份脚本,内容如下:
#!/usr/bin/perl -wmy $svn_repos="/var/svn/svnrepos";my $backup_dir="/var/svn/svnrepos";#my $time=$(date +%Y%m%d:%H:%M:%S);#my $next_backup_file = "svn".$time;#按照星期几当文件后缀,#my $next_backup_file = "svnback.".`date +%Y%m%d`; my $next_backup_file = "svnback.".`date +%u`; #my $svnadmin_cmd="svnadmin dump --revision $youngest $svn_repos >$backup_dir/$next_backup_file";#'$svnadmin_cmd';my $svnadmin_cmd="svnadmin dump $svn_repos >$backup_dir/$next_backup_file"; `$svnadmin_cmd`; open(LOG,">$backup_dir/last_backed_up"); #记录备份的版本号print LOG $next_backup_file;close LOG;#如果想节约空间,则再执行下面的压缩脚本#print "Compressing dump file.../n"; print `gzip -9 $backup_dir/$next_backup_file`;
2、 上传到 linux /usr/local/scripts/ 路径下
3、 设置定时调度
linux 下输入 crontab -e 命令,
设置 定时的时间和程序路径 */1 * * * * /usr/local/scripts/incr0_svn.sh (测试阶段,设置一分钟一调用,完事设置成1天一调用)
最后修改为周一和周五(2点)定时调度 * 2 * * 1,2,3,4,5 /usr/local/scripts/incr0_svn.sh
4、 生成 svnback.5文件在 /var/svn/svnrepos/ 目录下
备份完成的文件需要调用shell脚本上传到另外一个linux机器上备份
5、新建一个文件 ftp_svn.sh
内容如下
#! /bin/shftp -i -n << !open 10.210.33.37user eteller eteller1234cd /svnbackup/ lcd /var/svn/svnrepos/.binput svnback.`date +%u`.gzbye!
0 0
- linux svn定时备份文件 + 文件上传
- linux-------定时备份文件
- LINUX 定时备份文件
- Linux 自动上传备份文件
- 在Linux中定时备份文件
- 定时备份文件
- Linux Shell scp 文件定时上传
- Linux ftp 自动上传备份文件脚本
- Linux ftp 自动上传备份文件脚本
- Linux ftp 自动上传备份文件脚本
- Linux ftp 自动上传备份文件脚本 .
- Linux ftp 自动上传备份文件脚本
- Linux ftp 自动上传备份文件脚本
- crontab定时任务打包备份文件并删除过期文件
- Linux下Debian包定时备份数据库文件和删除备份文件
- Linux定时备份文件系统,并删除7天前的备份文件
- Linux TAR备份文件时排除指定文件
- 定时删除过期备份文件
- 第十四周1
- Linux 网络编程基础
- 预计到2020年中东电商市场规模将增长40%
- okhttp详解(参数)
- Java过滤器与SpringMVC拦截器之间的关系与区别
- linux svn定时备份文件 + 文件上传
- Android客户端与服务端交互之登陆示例
- 【WPF】获取下拉列表(ComboBox)的选项(ComboBoxItem)的内容
- Flink源码解读--FlinkKafkaProducer09
- HihoCoder--A+B解答
- mahout学习过程中遇到java @Override问题
- nodeJs基础概念
- 第十三周项目3-Dijkstra算法的验证
- MYSQL 初始密码