Web与技术 · 2011年06月26号 0

rsync的企业级应用

最近一直在上RHCE的课程,无意中发现rsync这个命令很有意思,rsync是远程同步的缩写(remote synchronize),顾名思义,这个命令可以用来进行数据的远程同步,使用rsync –help可以看到它有非常多的参数,而且应用语法也比较复杂,下面我通过一个实例来简要阐述一下rsync的用法。

rsync的主配置文件/etc/rsyncd.conf
use chroot=no
pid file=/var/run/rsyncd.pid
lock file=/var/run/rsync.lock
log file=/var/log/rsyncd.log

[testfile]
path=/home/shell
#auth users=root
uid=root
gid=root
#secrets file=/etc/rsyncd.pass
read only=no

[resource]
path=/root/Desktop/resource
uid=root
gid=root
read only=no

数据同步脚本:
#!/bin/sh
rsync -qzrtopg –inplace –password-file=/etc/rsync.pass [email protected]::resource /home/resource

密码保存文件:/etc/rsync.pass
root:redhat

定期执行数据同步的计划任务设置:crontab -u root -e
1 * * * * /bin/sh /home/shell/rsync.sh

以上设置的作用是通过cron定期同步目录/root/Desktop/resource和目录/home/resource,其中文件压缩传输,保留截留时间,权限,所属用户和组,同文件名的文件更新,不同文件名的保留,传输过程中不输出任何信息。

当然以上只是一个非常简单的例子,rsync有很多参数可以实现数据更新,数据下载备份等功能,如果你感兴趣可以慢慢研究!
#+++++++++++++++++++++++++++++++++
# 课题:rsync的企业级应用实例
# 作者:胡昌文
# 日期:2008-7-22
# MSN:[email protected]
#+++++++++++++++++++++++++++++++++

最近一直在上RHCE的课程,无意中发现rsync这个命令很有意思,rsync是远程同步的缩写(remote synchronize),顾名思义,这个命令可以用来进行数据的远程同步,使用rsync –help可以看到它有非常多的参数,而且应用语法也比较复杂,下面我通过一个实例来简要阐述一下rsync的用法。

rsync的主配置文件/etc/rsyncd.conf
use chroot=no
pid file=/var/run/rsyncd.pid
lock file=/var/run/rsync.lock
log file=/var/log/rsyncd.log

[testfile]
path=/home/shell
#auth users=root
uid=root
gid=root
#secrets file=/etc/rsyncd.pass
read only=no

[resource]
path=/root/Desktop/resource
uid=root
gid=root
read only=no

数据同步脚本:
#!/bin/sh
rsync -qzrtopg –inplace –password-file=/etc/rsync.pass [email protected]::resource /home/resource

密码保存文件:/etc/rsync.pass
root:redhat

定期执行数据同步的计划任务设置:crontab -u root -e
1 * * * * /bin/sh /home/shell/rsync.sh

以上设置的作用是通过cron定期同步目录/root/Desktop/resource和目录/home/resource,其中文件压缩传输,保留截留时间,权限,所属用户和组,同文件名的文件更新,不同文件名的保留,传输过程中不输出任何信息。

当然以上只是一个非常简单的例子,rsync有很多参数可以实现数据更新,数据下载备份等功能,如果你感兴趣可以慢慢研究!