阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

完全解析Rsync命令的17个备份选项

33次阅读
没有评论

共计 1813 个字符,预计需要花费 5 分钟才能阅读完成。

导读 常常备份是良好的习惯,只是这么好习惯只有在无数次的顿足捶胸、呼天抢地的懊恼之后,才会勉勉强强慢慢地养成。

完全解析 Rsync 命令的 17 个备份选项

常常备份是良好的习惯,只是这么好习惯只有在无数次的顿足捶胸、呼天抢地的懊恼之后,才会勉勉强强慢慢地养成,备份最常用的命令是:

rsync -avl source destination

此处的短选项 a 是长选项 –archive 的简写形式。然而,如果我们要系统搬家的时候备份所有的资料,谨慎用 -a 选项。因为如果在新系统上换了新的用户名,会导致你打不开用 -a 选型备份的所有资料。

为什么呢?

1) 便捷却不简单的 –Archive 选项

选项 –archive 看似仅仅代表一个指示条件,其实质却是多个高频选项的快捷键:

rsync -a #等价于  -rlptgoD

换言之,- a 这一个 option,相当于添加了 -rlptgoD 这七个 options。引言中提出的问题,症结就在这里。

-p  --perms # 保留权限 
-o  --owner # 保留 owner 
-g  --group # 同步组 

上面的三个选项,分别同步文件的额权限,属主和属组; 后果是,我们只能用当前的用户查看所有备份的资料。切换用户之后,则没有对应权限查看。

因此,我们重装系统备份所有资料的时候,要慎用 -a 选项。

2) 常用的基本选项

rsync 的基础选项有:

-v  --verbose # 在终端中报告当前的进度 
-r  --recursive # 递归模式 
-t  --times # 同步时间戳 
-I --ignore-times # 不同步时间戳 
-l --links # 创建软连接 
-L, --copy-links  # 复制软连接所指向的位置 
-z, --compress  # 允许压缩 
-d, --dirs  # 只备份目录树结构 

以上 8 个 option 是 rsync 命令的基础部分。

3) 排除和包含特定的文件与目录

同步的过程中,我们常常需要排除掉 dot 文件,比如.git.ssh 等,exclude 命令就有了用武之地

--exclude={.ssh,.git,.config}

-exclude-from=FILE 选项提供了更贴心的服务,我们可以将经常要排除掉的目录写进专门的文件。此文件中,我们可以应用 #和; 备注,rsync 命令会自动忽略,同时也会跳过空白行。

与‘exclude’相对应的是‘include’。如果不使用 {},我们可以写成多行的模式:

rsync -av ~/Documents  \ 
--include=~/Public \ 
--include=~/Music \ 
--include=~/Videos \ 
--include=~/Downloads \ 
/media/spiritme/disk/

除了 include 和 exclude 之外,rsync 还准备了根据文件的大小实施筛选的选项:

--max-size=SIZE # 筛选掉大于此 SIZE 的文件 
--min-size=SIZE # 排除掉小于此 SIZE 的文件 
4)rsync 命令的核心

–update 选项是 rsync 命令的灵魂。根据 rsync 十分贴心的算法,destination 中时间戳晚于 source 中的文件不会被覆盖掉。

与 –update 选项协同作战的还有 –delete 选项,将删除掉 destination 中多余的目录与文件。

与 –delete 呼应的是 –existing 选项,只同步在目标位置存在的文件,而不创建新的文件。

以上三个选项乃是 rsync 命令的核心部分。

我们还可以更好的监控 rsync 的工作进度以及生成最终的报告。

–progress 会打印档期的进度

782448  63%  110.64kB/s    0:00:04 # 与 -h 搭配使用 

-i, –itemize-changes 将生成所有变更的报告。

5) 改变 rsync 算法的选项

-W, –whole-file 选项会改变 rsync 的算法。关闭其默认的 delta-transfer algorithm,而将文件整体移动。当然如果是在本地执行 rsync,-W 则是默认行为。

-c, –checksum 选项将改变 rsync 默认的‘quick-check’算法。

6) 收尾总结

我们从具体问题‘rsync-a’ 命令导致的权限问题出发,遵循循序渐进的逻辑分别探讨了:

1) 快捷方式 rsync -a2) 常用的 8 个基本选项 3) 排除和包含特定的文件与目录的方法 4)rsync 命令的核心 5) 改变 rsync 算法的选项

完全解析 Rsync 命令的 17 个备份选项

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-25发表,共计1813字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中