rsync工作常用命令总结

文章目录

  • rsync常用命令总结
    • 命令行参数解释
    • 两个目录完全一样同步命令
    • 怎么知道 rsync 同步了哪些文件
    • 工作场景错误总结
      • Rsync进程退出状态: 23

rsync常用命令总结

命令行参数解释

rsync -atcl -pXEogR --delete  "/app/static//"  "/backup//"

这段代码是一个 rsync 命令,用于将源目录 /app/static/ 中的文件和目录同步到目标目录 /backup/

各个选项和参数的解释:

  • -a:归档模式,表示传输时保持文件的属性,包括权限、所有者和组、时间戳等。
  • -t:保持源文件的时间戳。
  • -c:根据文件的校验和(checksum)进行比较,而不是根据时间和大小。
  • -l:保持文件的链接。
  • -p:保持文件的权限。
  • -X:保持文件的扩展属性。
  • -E:保持文件的扩展属性。
  • -o:保持文件的所有者。
  • -g:保持文件的所属组。
  • -R:递归地传输目录及其内容。
  • –delete:在目标目录中删除不存在于源目录中的文件。

将 /app/static/ 目录中的所有文件和目录同步到 /backup/ 目录,并确保目标目录中的文件与源目录保持一致。该命令将传输文件的属性、时间戳、权限等,并删除目标目录中不存在于源目录中的文件。

两个目录完全一样同步命令

rsync -rtcl -pXE --delete --rsync-path=rsync ./  "/home/backup_dir" --log-file=sync.log

-r:递归复制目录及其内容。
-t:保持文件时间戳一致。
-c:通过比较文件的校验和来判断是否需要复制。
-l:保留符号链接。
-p:保留文件权限。
-X:保留扩展属性。
-E:保留扩展属性。
–delete:删除目标目录中不存在于源目录中的文件。

-X 和 -E 选项在 rsync 命令中具有相同的功能,用于保留文件的扩展属性。
这两个选项在不同的 rsync 版本中可能有所差异。早期版本的 rsync 使用 -E 选项来保留扩展属性,而较新的版本则使用 -X 选项。

因此,如果你使用的是较新的 rsync 版本,建议使用 -X 选项来保留扩展属性。但是如果你使用的是较早的 rsync 版本,可能需要使用 -E 选项。

无论是使用 -X 还是 -E,它们都用于确保文件的扩展属性在进行 rsync 文件同步时得到保留。

怎么知道 rsync 同步了哪些文件

方法1:在执行 rsync 命令时,可以使用 -v(或 --verbose)选项来显示详细的输出,以了解哪些文件正在进行同步操作。

注意,由于 -v 选项会产生大量的输出,如果同步的文件很多,输出可能会很长。你可以根据需要将输出导入文件或使用管道操作符 | 进行过滤和搜索。

方法2: --log-file 会记录文件同步的情况。
–log-file=sync.log

执行完 rsync 命令后,你可以使用文本编辑器或命令行工具查看 sync.log 文件,以查看同步的文件列表和其他详细信息

# cat sync.log
2024/02/06 15:27:07 [10899] building file list
2024/02/06 15:27:07 [10899] .d..t...... ./
2024/02/06 15:27:07 [10899] >f+++++++++ bbbb
2024/02/06 15:27:07 [10899] >f+++++++++ sync.log
2024/02/06 15:27:07 [10899] sent 596 bytes  received 62 bytes  total size 106

工作场景错误总结

Rsync进程退出状态: 23

的建议是列出 rsync -av 输出并查找类似的错误。

rsync 报错。

解决方法:
情况1:
rsync的source 有些文件没有读权限,所以报错。:

chmod +r  ./* -R 

再次同步,即可OK.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/698195.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++之STL:vetor容器

STL中的序列式容器主要包括 vector 向量容器、list 列表容器以及 deque 双端队列容器。 vector 实现的是一个动态数组。 定义在 <vector> 头文件中。 #include <iostream> #include <vector> using namespace std; int main() {//初始化一个空vectorvecto…

Linux:Jenkins用户权限和管理

1.下载插件 由于Jenkins的默认权限管理并不是很精细所以我们安装一个插件进行权限的一个管理 插件名称为&#xff1a;Role-based Authorization Strategy 安装完插件我们再去配置一下 进入全局安全配置 选择这个Role-Based Strategy策略然后保存 2.创建角色 我们这里主要使…

【C++私房菜】面向对象中的多重继承以及菱形继承

文章目录 一、多重继承1、多重继承概念2、派生类构造函数和析构函数 二、菱形继承和虚继承2、虚继承后的构造函数和析构函数 三、has-a 与 is-a 一、多重继承 1、多重继承概念 **多重继承&#xff08;multiple inheritance&#xff09;**是指从多个直接基类中产生派生类的能力…

C++程序设计学习笔记(二)

系列文章目录 提示&#xff1a;这里可以添加系列文章的所有文章的目录&#xff0c;目录需要自己手动添加 例如&#xff1a;第一章 Python 机器学习入门之pandas的使用 提示&#xff1a;写完文章后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目…

如何基于prompt来构建大模型AI产品?

构建一个基于 prompt 的大型 AI 产品是可能的&#xff0c;尽管 prompt 本身是一个用于基本命令行交互的简单工具。但是&#xff0c;你可以借助它作为用户输入和输出的一种方式&#xff0c;并结合其他技术来实现更复杂的功能。下面是一个基本的步骤指南&#xff1a; 1、确定产品…

MybatisPlus--03--IService、ServiceImpl

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 1. IService接口1.1 IService、ServiceImpl 接口的使用第一步&#xff1a;实现basemapper接口第二步&#xff1a;编写service类第三步&#xff1a;编写serviceImpl第…

开发Chrome插件,background.js中log打印未出现在控制台

不同于内容脚本&#xff08;通常命名content.js&#xff09;&#xff0c;在后台脚本&#xff08;通常命名background.js或service-worker.js&#xff09;中console.log并不会在控制台中直接显示。 要查看后台脚本上下文的正确控制台&#xff0c;执行如下步骤&#xff1a; 访问…

蓝桥杯备赛系列——倒计时50天!

蓝桥杯备赛系列 倒计时50天&#xff01; 前缀和和差分 知识点 **前缀和数组&#xff1a;**假设原数组用a[i]表示&#xff0c;前缀和数组用sum[i]表示&#xff0c;那么sum[i]表示的是原数组前i项之和&#xff0c;注意一般用前缀和数组时&#xff0c;原数组a[i]的有效下标是从…

【Python笔记-设计模式】工厂模式

一、说明 (一) 解决问题 提供了一种方式&#xff0c;在不指定具体类将要创建的情况下&#xff0c;将类的实例化操作延迟到子类中完成。可以实现客户端代码与具体类实现之间的解耦&#xff0c;使得系统更加灵活、可扩展和可维护。 (二) 使用场景 希望复用现有对象来节省系统…

Maven depoly:Skipping artifact deployment

问题描述&#xff1a; 使用IDEA执行mvn depoly将本地开发的模块发布到Maven私服时&#xff0c;一直提示&#xff1a;Skipping artifact deployment&#xff0c;自动跳过了depoly部署阶段。 问题分析 Maven构建生命周期中的每一个阶段都是由对应的maven插件执行具体工作的。既然…

使用IDEA创建spring boot web项目并测试运行

文章目录 准备工作构建项目1、通过Maven Archetype构建一个webapp项目2、添加 Spring Boot 所需依赖3、创建配置文件4、创建启动类5、创建web api 接口6、测试web api接口 准备工作 idea下载地址&#xff1a; https://www.jetbrains.com/idea/download/?sectionwindows java下…

关于torch.cuda.is_available() 返回False 详细说明及解决

一 cuda 环境检测失败 cuda 环境检测代码&#xff1a; import torchprint(torch.__version__) print(torch.cuda.is_available()) print(torch.version.cuda) cuda 环境检测代码执行结果如下图&#xff1a; 关键代码print(torch.cuda.is_available()) 返回 False 通常表示当…

C语言实现基础数据结构——栈

目录 栈 栈的实现 数组栈 数组栈的实现 栈的初始化 栈的销毁 数据入栈 判断栈是否为空 数据出栈 获取栈顶元素 获取栈内数据个数 项目实现 栈的基础练习 有效的括号 栈 栈是一种特殊的线性表&#xff0c;其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的…

后端设计PNR一点总结

条条大路通罗马 在追求极致PPA的过程中,时序问题总是可以解决 方法总比困难多 关键问题其实就是控制delay 不多不少,简单总结二十一条(欢迎大家评论区继续发挥): module padding的设置,可以有效解决congestion问题,factor自己try,命令:setPlaceMode -place_global…

代码随想录算法训练营Day40 | 343.整数拆分、96.不同的二叉搜索树

343.整数拆分 &#xff08;初见甚至看不出为什么这题是动规&#xff09; 本题大体思路是一个数可以被拆成两个或更多的数&#xff0c;而该数的最大乘积能由其拆成的数递推得到 注意点主要在于理解dp数组的定义 1、DP数组定义&#xff1a;一维数组&#xff0c;dp[i]表示 n i…

java.lang.IllegalStateException: Promise already completed.

spark submit 提交作业的时候提示Promise already complete 完整日志如下 File "/data5/hadoop/yarn/local/usercache/processuser/appcache/application_1706192609294_136972/container_e41_1706192609294_136972_02_000001/py4j-0.10.6-src.zip/py4j/protocol.py"…

Draw.io绘制UML图教程

一、draw.io介绍 1、draw.io简介 draw.io 是一款强大的免费在线图表绘制工具&#xff0c;支持创建流程图、组织结构图、时序图等多种图表类型。它提供丰富的形状库、强大的文本编辑和样式设置功能&#xff0c;使用户能够轻松创建专业级图表。draw.io 具有用户友好的界面&…

LeetCode 热题 100 | 二叉树(终)

目录 1 二叉树小结 1.1 模式一 1.2 模式二 2 236. 二叉树的最近公共祖先 3 124. 二叉树中的最大路径和 菜鸟做题&#xff08;返校版&#xff09;&#xff0c;语言是 C 1 二叉树小结 菜鸟碎碎念 通过对二叉树的练习&#xff0c;我对 “递归” 有了一些肤浅的理解。…

【激光SLAM】基于滤波的激光SLAM方法(Grid-based)

Filter-based SLAM 贝叶斯滤波数学概念贝叶斯滤波特性贝叶斯滤波的推导 粒子滤波&#xff08;Particle filter&#xff09;特性流程状态传播权重评估重采样算法流程存在的问题 FastSLAM的原理及优化FastSLAM介绍算法流程FastSLAM优化存在的问题及优化进一步优化proposal分布最终…

RabbitMQ学习整理————基于RabbitMQ实现RPC

基于RabbitMQ实现RPC 前言什么是RPCRabbitMQ如何实现RPCRPC简单示例通过Spring AMQP实现RPC 前言 这边参考了RabbitMQ的官网&#xff0c;想整理一篇关于RabbitMQ实现RPC调用的博客&#xff0c;打算把两种实现RPC调用的都整理一下&#xff0c;一个是使用官方提供的一个Java cli…