Rsync+Crond实现定时备份

1确定rsync 软件是否安装

rpm -qa rsync

没有安装安装

yum -y install rsync

服务端

1.手动配置rsync软件配置文件

vim  /etc/rsyncd.conf
##全局配置			
uid = root    #用户			
gid = root    #用户组			
use chroot = no    #安全相关			
max connections = 200    #最大链接数			
timeout = 300    #超时时间			
pid file = /var/run/rsyncd.pid    #进程对应的进程号文件			
lock file = /var/run/rsync.lock    #锁文件			
log file = /var/log/rsyncd.log    #日志文件,显示出错信息

##模块配置			
[backup]            #模块名称			
path = /data      #模块对应的位置(路径)			
ignore errors       #忽略错误程序			
read only = false    #是否只读			
list = false        #是否可以列表			
hosts allow = 10.0.0.0/24  #准许访问rsync服务器的客户范围			
#hosts deny = 0.0.0.0/32      #禁止访问rsync服务器的客户范围			
auth users = rsync_backup    #不存在的用户;只用于认证			
secrets file = /etc/rsync.password  #设置进行连接认证的密匙文件

2.创建rsync备份目录/授权rsync用户管理备份目录;修改备份目录权限

mkdir -p /data
useradd rsync -s /sbin/nologin -M
chown -R rsync.rsync /data/

3.重启服务

systemctl restart rsyncd.service

4.设置开机自启

systemctl enable rsyncd.service

客户端

1.创建密码文件,客户端密码文件中,只需要密码即可。同时,密码文件的权限是600

echo "123456">/etc/rsync.password
chmod 600 /etc/rsync.password

2.客户端测试推送文件

rsync -avz 备份的文件 rsync_backup@10.0.0.41::backup --password-file=/etc/rsync.password

3.客户端拉取文件

rsync -avz rsync_backup@10.0.0.41::backup --password-file=/etc/rsync.password /tmp

rsync 补充参数

参数意义
–delete实现无差异数据同步/具备删除功能
–bwlimit=KBPS实现数据传输过程中限速
exclude=PATTERN指定一个文件或目录 --exclude={file1,file2} 可以排除多个无顺序规则文件或目录
–exclude-from=FILE指定排除多个文件或目录信息,将排除信息写入到一个文件中,利用–exclude-from=排除文件名 类似于tar 打包排除命令
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现实时同步,可以结合使用rsync和inotify工具。 首先,使用rsync命令进行初始的文件同步。你可以使用如下命令: ``` rsync -avz --delete source_directory/ destination_directory/ ``` 这将同步源目录(source_directory)中的文件到目标目录(destination_directory)。-a`选项表示使用归档模式,保持文件属性和权限不变。`-v`选项表示输出详细的同步信息。`-z`选项表示启用压缩来加快传输速度。`--delete`选项表示删除目标目录中不存在于源目录中的文件。 接下来,你可以使用inotify工具监控源目录的文件变化,并在有变更时自动触发rsync命令进行实时同步。inotify是Linux内核提供的一种机制,可以监视文件系统中的事件,如文件或目录的创建、修改、删除等。 你可以使用inotifywait命令来监控文件系统事件,并在事件发生时执行rsync命令。以下是一个示例: ``` #!/bin/bash SOURCE_DIR="/path/to/source_directory" DESTINATION_DIR="/path/to/destination_directory" inotifywait -m -r -e modify,create,delete,move "$SOURCE_DIR" | while read path action file; do rsync -avz --delete "$SOURCE_DIR/" "$DESTINATION_DIR/" done ``` 上述脚本监视源目录中的修改、创建、删除和移动事件,并在事件发生时执行rsync命令进行同步。你可以将脚本保存为一个.sh文件,并使用`chmod +x script.sh`命令赋予执行权限。 这样,当源目录中的文件发生变化时,inotify会捕捉到事件并触发rsync命令进行实时同步到目标目录。 请注意,以上示例仅为演示目的,并没有考虑到错误处理、日志记录等方面。在实际应用中,你可能需要对脚本进行适当的修改和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值