首页 > 系统相关 >Linux rsync使用

Linux rsync使用

时间:2022-08-22 15:29:27浏览次数:50  
标签:文件 rsync -- Linux 使用 home root synctest

rsync的优点

1.它有效地将文件复制和同步到远程系统或从远程系统同步文件到本地。

2.支持复制链接、设备、所有者、组和权限。

3.它比scp (Secure Copy)更快,因为rsync使用远程更新协议,该协议只允许传输两组文件之间的差异。第一次,它将一个文件或目录的全部内容从源文件复制到目标文件,但从下一次开始,它只将更改的块和字节复制到目标文件。

4.Rsync在两端发送和接收数据时采用压缩和解压缩方式,因此占用的带宽较少。

-a ,--archive:归档模式表示以递归方式传输文件,并保持所有文件属性

-r,--recursive:对子目录以递归模式处理

-l,--links:保持符号链接文件

-H,--hard-links:保持硬链接文件

-p,--perms:保持文件权限

-t,--times:保持文件时间信息

-g,--group:保持文件属组信息

-o,--owner:保持文件属主信息

-D:保持设备文件和特殊文件

-z--compress:压缩传输当前目录的所有文件

-h:人类可读的格式输出

-e,--rsh=COMMAND:表示自定义的shell

-v:输出详细信息

--exclude=PATTERN:指定排除一个不需要传输的文件匹配模式

--exclude-from=FILE:从FILE中读取包含规则

--existing:仅仅更新那些已经存在于接收端的文件,而不备份那些新创建的文件

--ignore-existing:忽略那些已经存在于接收端的文件,仅备份那些新创建的文件

-b,--backup:当有变化时,对目标目录中的旧版文件进行备份

--backup-dir=DIR:与-b结合使用,将备份文件存到DIR目录中

--delete:删除那些接收端还有而发送端已经不存在的文件

-P:保留那些因故没有完全传输的文件,以便加快随后的再次传输,在传输时显示传输过程

-q:精简输出模式

-n,--dry-run:显示哪些文件将被传输

--list-only:仅仅列出文件,而不进行复制

--password-file=FILE 从 FILE 中读取口令,以避免在终端上输入口令

 

在指定复制源时,路径是否有最后的 “/” 有不同的含义,例如:

/home :表示将整个 /home 目录复制到目标目录
/home/ :表示将 /home 目录中的所有内容复制到目标目录

1、同步172.28.17.221的/home/.../audio/目录下的所有 到本机的/home/synctest/目录下

[root@glusterfs03 synctest]# rsync -P -artzhe 'ssh -p 22' --bwlimit=100K --delete [email protected]:/home/hl95/webapps/fs1/100000/audio/ /home/synctest/

2、同步172.28.17.221的/home/.../audio/目录下除了20220607目录以外的其他所有 到本机的/home/synctest/目录下

[root@glusterfs03 synctest]# rsync -P -artzhe 'ssh -p 22' --delete --exclude='20220607' --exclude='20220608' [email protected]:/home/hl95/webapps/fs1/100000/audio/ /home/synctest/

3、创建不需要同步的文件或者目录列表文本,指定排除文件

vim exclude.txt 
20220608
202206071401451001123456789011234561779163625719623.mp3

执行:

[root@glusterfs03 synctest]# rsync -P -artzhe 'ssh -p 22' --delete --exclude-from=/home/exclude.txt [email protected]:/home/hl95/webapps/fs1/100000/audio/  /home/synctest/

4、--max-size:大于指定大小的50K的文件不传输(可以是M,G)

[root@glusterfs03 synctest]# rsync -P -artzhe 'ssh -p 22' --delete --max-size='50K' [email protected]:/home/hl95/webapps/fs1/100000/audio/ /home/synctest/

5、限制Rsync传输时的带宽--bwlimit=100K,显示带宽为100K

[root@glusterfs03 synctest]# rsync -P -artzhe 'ssh -p 22' --delete --bwlimit=100K [email protected]:/home/hl95/webapps/fs1/100000/audio/ /home/synctest/

另外,默认情况下rsync只同步更改的块和字节,如果你想完整同步整个文件或目录,那么你可以使用-W选项。

 

标签:文件,rsync,--,Linux,使用,home,root,synctest
From: https://www.cnblogs.com/sky-cheng/p/16612736.html

相关文章

  • 参数校验---gin框架内置使用validator
    type SignUpParam struct {    Age       uint8 `json:"age" binding:"gte=1,lte=130"`    Name      string`json:"name" binding:"req......
  • 【完美解决】使用flask的run启动debug来运行puppeteer,报错【signal only works in ma
    解决方案:puppeteer在初始化launch时,必须增加以下的参数【handleSIGINT=False,handleSIGTERM=False,handleSIGHUP=False】才能使得flask的run-debug模式启动也能正常运行!......
  • 解决linux删除文件空间未释放
    问题描述linux系统,磁盘占用率很高,删除一些正在使用的大文件,实际空间未得到释放,文件的句柄未被关闭问题解决lsof|grepdelete//删除的文件进程kill-9piddf-h......
  • 关于使用Git不能拉取GitLab https项目地址的问题
    现在使用Git命令直接clonehttps://xxx项目时候会报错“没有权限拉取代码”,其实我们需要在“UserSettings ---》AccessTokens“界面新增一个 accesstoken就好了,......
  • 小程序worker的使用
    JavaScript线程JavaScript语言采用的是单线程模型,也就是说,所有任务只能在一个线程上完成,一次只能做一件事。前面的任务没做完,后面的任务只能等着。随着电脑计算能力的增......
  • java springboot 初体验 (六)添加统一的入参出参打印日志(使用切面)
    上一篇javaspringboot初体验(五)对接apollohttps://www.cnblogs.com/zwjvzwj/p/16602858.htmlpom文件中添加依赖<!--切面--><dependency>......
  • Linux到底要做什么?
    从上一回分析了Linux到底是什么之后。我觉得得具体地思考一下我们到底在实际应用中会拿Linux做什么?从产品应用上来说:如手机、智能电视、智能音箱、车载中控1.手机性能调......
  • Linux启动Mysql出现command not found的解决方法
    当在Linux中安装Mysql后,不管是在根目录下还是在安装mysql的bin下执行mysql-uroot-p结果都是commandnotfound,如下图所示:问题原因,linux默认启动Mysql,会在根目录下的bin中......
  • 动手分析SQL Server中的事务中使用的锁
    序本文属于基础知识的回顾,在日常技术交流和日常工作中经常发现有些同事了解关于数据库事务的基本知识,会看SQL语句的执行计划,也知道数据库有X锁、U锁和S锁等各种锁,但是对于......
  • Linux-->vi和vim编辑器的基本操作
    vim编辑器介绍vi或者vim就是对linux下的文本进行编辑的一种编辑器比如说a.cpp文件这种Linux会内置vi文本编辑器Vim可以简单的认为vi的增强版Linux是区分大小写的!用......