最近在处理策划资源文件的时候需要将目录A的文件全部同步到目录B的文件,并且把目录B内多余的文件全部删除掉。所以,就想到了使用rsync的--delete参数来实现功能。... $ rsync -avz --delete dirA/ dirB/ sending incremental file list ./ deleting fileB3.txt deleting fileB2...$ rsync -avz --delete --exclude "fileB3.txt" dirA/ dirB/ sending incremental file list ./ deleting...目录内,并且在dirB目录内删除多余的文件,同时,如果dirB内有fileA2.txt和fileA1.txt这两个被排除同步的文件,仍然将其删除。....txt和fileA2.txt两个被过滤的文件也被删除掉了。
在日常运维工作中,我们经常用到rsync这个同步神器。有时在同步两个目录时,会要求删除目标目录中比源目录多出的文件,这种情况下,就可用到rsync的--delete参数来实现这个需求了。...所以,就想到了使用rsync的--delete参数来实现功能。...我们可以使用rsync的--delete-before参数来实现快速删除大量文件。...1)建立一个空的文件夹: mkdir /tmp/test 2)用rsync删除目标目录: rsync --delete-before -a -H -v --progress --stats /tmp/test...选项说明: --delete-before 接收者在传输之前进行删除操作 --progress 在传输时显示传输过程 --a 归档模式,表示以递归方式传输文件,并保持所有文件属性 --H 保持硬连接的文件
--delete delete extraneous files from dest dirs --delete-before...For example: rsync -a --files-from=:/path/file-list src:/ /tmp/copy This...For example: rsync -av --list-only foo* dest/ --bwlimit=KBPS This...anything: rsync -avF --delete-after host:src/dir /dest However, if the merge...host:src/dir /dest rsync -avFF --delete host:src/dir /dest BATCH MODE Batch mode can
rsync与scp差异 传输效率:rsync 可以复制已经存在于目标主机上的文件,同时只传输修改的部分。这可以显著提高传输速度,特别是在传输大文件或大型文件夹时。...数据保护:由于 rsync 在传输数据时进行了一些冗错检查,因此更可靠。如果您的文件损坏了,传输过程中的 rsync 操作将确保自动重新上传,并验证已完成的数据。...-v 详细输出,显示正在进行的操作和每个文件的传输进度 -r 递归复制目录及其中的文件 -u 仅更新目标文件,不覆盖已存在且新于源文件的文件 -z 传输时压缩数据,减少网络带宽占用 -n 查看 rsync...将执行哪些操作的预演模式,但不真正运行传输这样您可以在实际移动文件前测试 rsync 命令是否按照预期工作 --delete 删除目标上没有源文件对应的文件 --exclude=PATTERN 排除匹配上指定的文件或目录...但 *.log 文件将被排除掉。 执行进度 rsync列出了它正在复制的文件。
它主要是针对目录来说的,如果单独传一个文件不需要加-r选项,但是传输目录时必须加。...-p 表示保持文件权限 -o 表示保持文件属主信息 -g 表示保持文件属组信息 -D 表示保持设备文件信息 -t 表示保持文件时间信息 --delete 表示删除DEST中SRC中没有的文件 --exclude...=PATTERN 表示指定排除SRC中不需要传输的文件,等号后面跟文件名,可以用通配符如*.txt --progress 在同步的过程中可以看到同步的过程状态,比如统计要同步的文件数量、同步的文件传输速度等...-u 表示把dest中比src还新的文件排除掉,不会覆盖 -z 加上该选项,将会在传输过程中压缩 但是常用的选项是-a,-v,-z,--delete和--exclude。...is 0 speedup is 0.00 -delete 同步时删除目标目录rsync_dest中源目录rsync没有的文件,示例如下: [root@localhost ~]# rsync -avL
简单说就是rsync只传修改了的部分,如果改动较小就不需要全部重传,所以rsync备份速度较快;默认情况下,rsync 通过比较文件的最后修改时间(mtime)和文件的大小(size)来确认哪些文件需要被同步过去...=TIME 同步过程中,IP超时时间,单位为秒 --delete 删除那些目标目录中有而源目录中没有的多余文件。...这个是rsync做增量方式的全备份的最佳选择方案!!!!!! --delete-before 接受者在输出之前进行删除操作。即先将目标目录中文件全部删除,再将源目录文件拷贝过去。...--delete-after 在同步操作之后做比较,删除那些目标目录中有而源目录中没有的多余文件 --delete-excluded 删除目标目录中那些被该选项指定排除的文件 --ignore-errors...即使出现IO错误也进行删除,忽略错误 --exclude 指定同步时需要过滤掉的文件或子目录(即不需要同步过去的),后面直接跟不需要同步的单个文件名或子目录(不需要跟路径) ,过滤多个文件或子目录,就使用多个
,在监控的目录中新建文件或子目录 IN_DELETE,文件或目录被删除 IN_DELETE_SELF,自删除,即一个可执行文件在执行时删除自己 IN_MOVE_SELF,自移动,即一个可执行文件在执行时移动自己...=/etc/rsyncd.passwd #会直接同步远程备份服务器上同改同建,就是不能同删除/ done Tips: 此脚本每次只会更新inotify监控的新增的文件,对于监控到删除的文件,则不会在备份服务器删除...) --existing 仅仅更新那些已经存在于DST的文件,而不备份那些新创建的文件, --delete 删除DST目标中,在SRC源中没有的文件, (受DST在前和在SRC在前的影响) --delete-excluded...同样删除接收端那些被该选项指定排除的文件, --delete-after 传输结束以后再删除, --ignore-errors 及时出现IO错误也进行删除, --max-delete=NUM 最多删除...只能同步在客户端新创建的文件,而有时候本地还会删除一些文件需要服务器也做相应删除除了 rsync -r --delete mydir/ weiyigeek.top:mydir/ rsync -r --
--existing: 仅仅更新那些已经存在于DST的文件,而不备份那些新创建的文件。 --delete: 删除那些DST中SRC没有的文件。...--delete-excluded: 同样删除接收端那些被该选项指定排除的文件。 --delete-after: 传输结束以后再删除。 --ignore-errors: 及时出现IO错误也进行删除。...--max-delete=NUM: 最多删除NUM个文件。 --partial: 保留那些因故没有完全传输的文件,以便加快随后的再次传输。 --force: 强制删除目录,即使不为空。...-z, --compress: 对备份的文件在传输时进行压缩处理。 --exclude=PATTERN: 指定排除不需要传输的文件模式。...它不会使两个目录保持相同,并且不会删除文件。如果要使得目标目录成为源目录的镜像副本,则必须使用 --delete 参数,这将删除只存在于目标目录、不存在于源目录的文件。
rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。...---- 语法 rsync有六种不同的工作模式: 注: src表示源文件,dest表示目的文件 ---- 10.29 Options -a:包含-rtplgoD -r:同步目录时加上表示对子目录进行递归处理...-P:显示同步过程,比v更详细 -u:=update,加上该选项,如果DEST中文件比SRC中的新,则不同步 -z:=zip,传输时压缩 --delete:删除DEST中SRC没有的文件 --exclude...9.14 rsync -av --delete 删除目标文件中和源文件中不一样的文件 [root@adai003 ~]# touch /tmp/grep_dest/new2.txt [root@adai003...~]# rsync -av --delete /root/grep/ /tmp/grep_dest/ sending incremental file list ./ deleting new2.txt
rsync你需要它帮你同步文件夹的话,它是不会主动承担的,这也正是rsync的懒惰之处。...[—delete选项、—delete-excluded选项和—delete-after选项] 三个选项都是和“删除”有关的: 1、–delete:如果源端没有此文件,那么目的端也别想拥有,删除之。...(如果你使用这个选项,就必须搭配-r选项一起) 2、–delete-excluded:专门指定一些要在目的端删除的文件。...3、–delete-after:默认情况下,rsync是先清理目的端的文件再开始数据同步;如果使用此选项,则rsync会先进行数据同步,都完成后再删除那些需要清理的文件。...这个学习可是要小心使用到,一不小心会删除很多东西哦。 可以使用-n选项,它会用受影响的文件列表来警告你,但不会真的去删除,这就让我们有了确认的机会和回旋的余地。
SRC... rsync://[USER@]HOST[:PORT]/DEST 其中: SRC: 是要复制的源位置 DEST: 是复制目标位置 若本地登录用户与远程主机上的用户一致,可以省略 USER@... 使用和CVS一样的方法自动忽略文件,用来排除那些不希望传输的文件 --existing 仅仅更新那些已经存在于DST的文件,而不备份那些新创建的文件 --delete 删除那些DST中SRC没有的文件...--delete-excluded 同样删除接收端那些被该选项指定排除的文件 --delete-after 传输结束以后再删除 --ignore-errors 及时出现IO错误也进行删除 --max-delete...=NUM 最多删除NUM个文件 --partial 保留那些因故没有完全传输的文件,以是加快随后的再次传输 --force 强制删除目录,即使不为空 --numeric-ids 不将数字的用户和组ID匹配为用户名和组名...中的文件来决定是否需要备份 -P 等同于 --partial --progress 显示备份过程 -z, --compress 对备份的文件在传输时进行压缩处理 --exclude=PATTERN 指定排除不需要传输的文件模式
[DEST] rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST] 从远程 rsync 服务器中拷贝文件到本地机。...--existing 仅仅更新那些已经存在于DST的文件,而不备份那些新创建的文件。 --delete 删除那些DST中SRC没有的文件。...--delete-excluded 同样删除接收端那些被该选项指定排除的文件。 --delete-after 传输结束以后再删除。 --ignore-errors 及时出现IO错误也进行删除。...--max-delete=NUM 最多删除NUM个文件。 --partial 保留那些因故没有完全传输的文件,以是加快随后的再次传输。 --force 强制删除目录,即使不为空。...-z, --compress 对备份的文件在传输时进行压缩处理。 --exclude=PATTERN 指定排除不需要传输的文件模式。
rsync是一个功能非常强大的工具,Rsync的命令格式可以为以下六种: rsync [OPTION]... SRC DEST rsync [OPTION]......使用和CVS一样的方法自动忽略文件,用来排除那些不希望传输的文件 --existing 仅仅更新那些已经存在于DST的文件,而不备份那些新创建的文件 --delete 删除那些DST中SRC没有的文件...--delete-excluded 同样删除接收端那些被该选项指定排除的文件 --delete-after 传输结束以后再删除 --ignore-errors 及时出现IO错误也进行删除 --max-delete...=NUM 最多删除NUM个文件 --partial 保留那些因故没有完全传输的文件,以是加快随后的再次传输 --force 强制删除目录,即使不为空 --numeric-ids 不将数字的用户和组ID匹配为用户名和组名...中的文件来决定是否需要备份 -P 等同于 --partial --progress 显示备份过程 -z, --compress 对备份的文件在传输时进行压缩处理 --exclude=PATTERN 指定排除不需要传输的文件模式
] … SRC DEST [OPTION]表示它的选项 SRC表示源目录 DEST表示目标目录,或者是目标文件 rsync [OPTION] … SRC [user@]host:DEST //拷贝到远程的服务器上去...,不能当设备来用 -t 保持文件的时间属性 --delete 删除DEST中SRC没有的文件 --exclude 过滤指定文件,如--exclude “logs”会把文件名包含logs的文件或者目录过滤掉...@hf-01 ~]# rsync命令,删除目标中源文件中没有的内容 rsync -avL --delete /root/111/ /tmp/111_dest/ --delete会把多余的文件除去...[root@hf-01 ~]# touch /tmp/111_dest/new.txt [root@hf-01 ~]# rsync -avL --delete /root/111/ /tmp/111_dest...bytes/sec total size is 0 speedup is 0.00 [root@hf-01 ~]# 在添加文件后,再次同步,会只同步里面不相同的文件,而相同的文件则不会再次同步 [
,主要基于rsync命令工具同步目录和文 yum install -y rsync # 需要在所有主机上安装同步工具 # 才能进行同步 ###### 模块说明,不需要执行...delete 删除源中没有但目标存在的文件,使两边内容一样,以推送方为主 src 源目录及文件 dest 目的文件及目录 dest_port 目标接收的端口...rsync_path 服务的路径,指定rsync在远程服务器上执行 rsync_remote_user 设置远程用户名 –exclude=.log 忽略同步以.log结尾的文件...,这个可以自定义忽略什么格式的文件,或者.txt等等都可以,但是由于这个是rsync命令的参数,所以必须和rsync_opts一起使用,比如rsync_opts=--exclude=.txt这种模式...dest同步到目的地 # 注意:是本地的 www 文件夹及其内容整体同步复制过去
这个是rsync做增量方式的全备份的最佳选择方案!!!!!! --delete-before 接受者在输出之前进行删除操作。即先将目标目录中文件全部删除,再将源目录文件拷贝过去。...--delete-after 在同步操作之后做比较,删除那些目标目录中有而源目录中没有的多余文件 --delete-excluded 删除目标目录中那些被该选项指定排除的文件 --ignore-errors...即使出现IO错误也进行删除,忽略错误 --exclude 指定同步时需要过滤掉的文件或子目录(即不需要同步过去的),后面直接跟不需要同步的单个文件名或子目录(不需要跟路径) ,过滤多个文件或子目录,就使用多个...如何实现同步目标路径下的目录,不同步路径下的文件 ,只想同步目录结构 [root@bastion-IDC ~]# rsync -av --delete -f '+ */' -f '- *' SRC/ DEST.../ 但是这个--delete加上去就是一个危险的命令,因为它是在同步之前先将目标目录中的文件删除,然后再将源目录中的文件同步过去。
1、rsync的特性(功能) (1)支持拷贝特殊文件(如链接文件、设备文件) (2)拷贝时可以排除目录中目录或文件不需要同步的功能 (3)可以保持源文件或目录的属性不发生改变 (4)可以实现全量、增量的同步功能...sender removes synchronized files (non-dirs) #发送方删除同步文件(非目录) --del an alias...grep "rsync" rsync-3.0.6-12.el6.x86_64 c、配置rsync的配置文件/etc/rsyncd.conf rsyncd.conf(5) 28 Jan 2018 NAME...#rsyncd.conf文件是rsync的运行时配置文件,作为rsync守护进程运行 The rsyncd.conf file controls authentication, access, logging...lock file #锁文件 此参数指定用于支持“最大连接”参数的文件。rsync守护进程使用该文件上的记录锁定,以确保不超过共享锁文件的模块的最大连接限制。
增量同步 rsync [args] SRC [DEST]情形:同时维护着两份不同的data_center,但以old_data_center为标准。.../test_envs/trainer/resource /vip_data_center/test_envs/trainer/resource/ --delete: 删除DEST端存在但是SRC端不存在的文件...,如果不使用此参数,则DEST端会同步SRC端的文件,但DEST端已有的文件不受影响。...快速删除大量文件 先建一个空目录,随便位置 mkdir /local/empty_dir 用rsync删除目标目录 rsync --delete-before -avH --progress /local.../empty_dir/ /local/trainer_test/ trainer_test清空之后可以再用rm -rf trainer_test删除 注意不要忘了文件夹最后的/ rsync提供了一些跟删除相关的参数
[DEST] SRC:源文件 DEST:目标文件 option参数说明: #一般使用-avz就可以 -a:归档模式,递归并保留对象属性,等同于 -rlptgoD -r:递归模式,包含目录及子目录中所有文件...-v:显示同步过程的详细(verbose)信息 -z:在传输文件时进行压缩(compress) -H:保留硬连接文件 -A:保留ACL属性信息 --delete:删除目标位置有而原始位置没有的文件 -...[USER@]HOST:DEST [USER@]HOST:为Rsync同步的远程的连接用户和主机地址 SRC:为源,即拷贝的分区、文件或目录等,和HOST之间用一个冒号连接; [DEST]为目的分区、文件或目录等...[USER@]HOST::DEST rsync[OPTION] SRC... rsync://[USER@]HOST[:PORT]/DEST 客户端创建一个文件推送到服务器端 [root...+inotify实现触发式自动同步,inotify端创建或者一个文件rsync备份源也自动创建一个一模一样的文件,inotify删除一个文件rsync备份源也自动删除文件。
# mkdir src # touch src/{1,2,3,4} # mkdir dest # rsync -av src/ dest/ --将 src 目录里的所有的文件同步至 dest 目录(不包含...rsync -av src 172.16.22.12:/data/test/dest/ --整个目录同步过去 # rm -rf src/d --删除一个文件 d # rsync -av --delete...src/ 172.16.22.12:/data/test/dest/ --delete,从目标目录里面删除无关的文件 3、局域网指定用户同步 --172.16.22.12 # useradd george...false timeout = --该选项可以覆盖客户指定的 IP 超时时间。从而确保 rsync 服务器不会永远等待一个崩溃的客户端。...,可用参数: access --访问文件 modify --修改文件 attrib --属性变更 open --打开文件 delete --删除文件 create --新建文件 move