博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
rsync本地及远程复制备份【原创】
阅读量:6476 次
发布时间:2019-06-23

本文共 2135 字,大约阅读时间需要 7 分钟。

1、安装rsync

yum instsall rsync

 

2、本地复制

rsync -auq --progress --delete /tongbu1/ /tongbu2/

rsync -auq --progress --delete --exclude-from='/root/exclude.txt' /opt/mysql/data/ /mysqlbak/binlog/

 

3、配置ssh密匙

 

4、远程复制

rsync -e ssh -a -z --compress-level=9 "${backdir}.zip" 192.168.20.2:/mnt

 

5、复制远程服务器的文件到本地

rsync -e ssh -a -z --compress-level=9 192.168.20.2:/mnt ./

rsync -e ssh -a -z --compress-level=9 "${backdir}.zip" 192.168.20.2:/mnt
rsync -e ssh -auqz --delete /home/backup/tapebackup 192.168.20.2:/backup/daily_backup
rsync -e ssh -auq -z --compress-level=9 --delete /home/backup/tapebackup 192.168.20.2:/backup/daily_backup

报错

[root@02 ~]# rsync -e ssh -ar -z --compress-level=9 /home/backup/tapebackup root@192.168.20.2:/backup/daily_backup
Address 192.168.20.2 maps to localhost, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!
bash: rsync: command not found
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: remote command not found (code 127) at io.c(600) [sender=3.0.6]

问题是客户端服务器没有安装rsync,需要两台机器都要安装rsync

 

rsync排除文件及目录

一、排除单独的文件夹和文件

要排除sources文件夹,我们可以添加 '--exclude' 选项:
--exclude 'sources'
命令是这样的:
rsync -e 'ssh -p 30000' -avl --delete --stats --progress --exclude 'sources' demo@123.45.67.890:/home/demo /backup/
要排除 "public_html" 文件夹下的 "database.txt" 文件:
--exclude 'public_html/database.txt'
命令是这样的:
rsync -e 'ssh -p 30000' -avl --delete --stats --progress --exclude 'sources' --exclude 'public_html/database.txt' demo@123.45.67.890:/home/demo /backup/
二、使用 '--exclude-from' 排除多个文件夹和文件
建立文件:
/home/backup/exclude.txt
在里面定义要排除的文件夹和文件

sourcespublic_html/database.*downloads/test/**.txt

经过测试一般
文件夹
uploads
download/softs/
使用指令:
--exclude-from '/home/backup/exclude.txt'
最后的命令如下:
rsync -e 'ssh -p 30000' -avl --delete --stats --progress --exclude-from '/home/backup/exclude.txt' demo@123.45.67.890:/home/demo /backup/

rsync如何实现同步目标路径下的目录,不同步路径下的文件 ,只想同步目录
.代码如下:
rsync -av --delete -f '+ */' -f '- *' SRC/ DEST/

 

 

转载请注明出处

转自

rsync命令排除文件和文件夹(exclude-from) - CSDN博客 https://blog.csdn.net/liangdsh/article/details/51769910

参考

https://blog.csdn.net/knight_zhen/article/details/47109077

你可能感兴趣的文章
UCOS-III API函数
查看>>
EBS中加载FORM使用的JavaBean的JAR包
查看>>
c++ override 关键字
查看>>
LinqToXML
查看>>
交叉验证
查看>>
[转] 字符集编码(GBK,BIG5,UNICODE)与C++的string/wstring
查看>>
rest
查看>>
React Native自适应设备宽度解决方案
查看>>
Array.ConvertAll<TInput, TOutput> 数组相互转化方法
查看>>
Python基础学习七 网络编程
查看>>
简说设计模式——解释器模式
查看>>
Silverlight开发工具集合[转]
查看>>
appium自动化测试
查看>>
20155229--Java实验四《Android开发基础》
查看>>
无代理处理post非简单请求跨域问题
查看>>
OpenWrt修改
查看>>
thinkphp 后台的搭建
查看>>
class layout basic 2
查看>>
地震预测(模拟链表)
查看>>
欧拉函数
查看>>