【原创】关于rsync的问题

简介: 场景描述:昨天晚上接到一任务,要求把DBA备份的数据从外网环境拷贝到测试环境。 文件:users_idecl2010_2012-06-27.dmp.gz    大小5G多 远程主机:暂时保密哈! 本地主机:192.168.2.161 领导要求:每秒限速300K左右。
场景描述:昨天晚上接到一任务,要求把DBA备份的数据从外网环境拷贝到测试环境。
文件:users_idecl2010_2012-06-27.dmp.gz    大小5G多
远程主机:暂时保密哈!
本地主机:192.168.2.161
领导要求:每秒限速300K左右。
突然想到只能用expect脚本执行。脚本如下:
[root@localhost oracle]# more rsync-108.sh
#!/usr/bin/expect
set timeout 3000
spawn rsync -avcz --bwlimit=300 root@远程主机IP:/Backup/15_21/backup/users_idecl2010_2012-06-27.dmp.gz /home/oracle
expect "password:"
send "XXXXXXXXXXXX\r"
expect "]*"
exit
interact
再写个脚本定时执行:
[root@localhost oracle]# more rsync.sh
#!/bin/bash
echo `date +%F`
echo '============= rsync begin ============' >>  /home/oracle/rsync-108.log
date '+%Y-%m-%d %T' >>  /home/oracle/rsync-108.log
echo
/home/oracle/rsync-108.sh >> /home/oracle/rsync-108.log
echo
date '+%Y-%m-%d %T' >> /home/oracle/rsync-108.log
echo '============== rsync end  ============'  >> /home/oracle/rsync-108.log
最后我放到了crontab里去执行
17 21 * * * /home/oracle/rsync.sh > /dev/null 2>&1
脚本输出的日志如下
============= rsync begin ============
2012-06-27 21:17:01
spawn rsync -avcz --bwlimit=300 root@远程主机IP:/Backup/15_21/backup/users_id
ecl2010_2012-06-27.dmp.gz /home/oracle
root@远程主机IP's password:
receiving file list ... done
users_idecl2010_2012-06-27.dmp.gz
2012-06-27 22:07:04
============== rsync end  ============
奇怪的是50分钟就拷贝完了?然后去/home/oracle目录下查找,根本没找到这个文件。我一度的以为是我的脚本或者是crontab里面没生效的问题。但是早上我拿了一个小文件测试,大概就几M,放到crontab里面马上就能拷贝过去了。很奇怪的问题,是因为文件太大导致的吗?有路过的告诉请帮忙解答!小菜鸟不胜感激!
目录
相关文章
|
分布式计算 安全 Hadoop
rsync 案例|学习笔记
快速学习 rsync 案例
103 0
|
算法 网络协议 安全
Rsync 笔记(一)
rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。
1132 0
|
数据安全/隐私保护 Linux 网络安全
学习笔记:rsync命令实战
rsync是Linux系统下的数据镜像备份工具,本章就会以实例具体介绍如何使用rsync命令。
1627 0
|
监控 安全 数据安全/隐私保护
|
数据安全/隐私保护 开发工具 Perl
|
Shell Linux 网络安全