[root@xuexi ~]# rsync /etc/fstab /tmp                # 在本地同步
[root@xuexi ~]# rsync -r /etc 172.16.10.5:/tmp       # 将本地/etc目录拷贝到远程主机的/tmp下,以保证远程/tmp目录和本地/etc保持同步
[root@xuexi ~]# rsync -r 172.16.10.5:/etc /tmp       # 将远程主机的/etc目录拷贝到本地/tmp下,以保证本地/tmp目录和远程/etc保持同步
[root@xuexi ~]# rsync /etc/                          # 列出本地/etc/目录下的文件列表
[root@xuexi ~]# rsync 172.16.10.5:/tmp/              # 列出远程主机上/tmp/目录下的文件列表

另外,使用rsync一定要注意的一点是,源路径如果是一个目录的话,带上尾随斜线和不带尾随斜线是不一样的,不带尾随斜线表示的是整个目录包括目录本身,带上尾随斜线表示的是目录中的文件,不包括目录本身。例如:

[root@xuexi ~]# rsync /etc /tmp
[root@xuexi ~]# rsync /etc/ /tmp

第一个命令会在/tmp目录下创建etc目录,而第二个命令不会在/tmp目录下创建etc目录,源路径/etc/中的所有文件都直接放在/tmp目录下。

将/etc/fstab拷贝到/tmp目录下。

[root@xuexi ~]# rsync /etc/fstab /tmp

(2).将/etc/cron.d目录拷贝到/tmp下。

[root@xuexi ~]# rsync -r /etc/cron.d /tmp

该命令会在目标主机上创建/tmp/cron.d目录,并将/etc/cron.d/中的文件放入到/tmp/cron.d/目录中,也就是说默认情况下,是不会在目录路径下创建上层目录/etc的。

(3).将/etc/cron.d目录拷贝到/tmp下,但要求在/tmp下也生成etc子目录。

[root@xuexi ~]# rsync -R -r /etc/cron.d /tmp

其中”-R”选项表示使用相对路径,此相对路径是以目标目录为根的。对于上面的示例,表示在目标上的/tmp下创建etc/cron.d目录,即/tmp/etc/cron.d,etc/cron.d的根”/”代表的就是目标/tmp。

如果要拷贝的源路径较长,但只想在目标主机上保留一部分目录结构,例如要拷贝/var/log/anaconda/*到/tmp下,但只想在/tmp下保留从log开始的目录,如何操作?使用一个点代表相对路径的起始位置即可,也就是将长目录进行划分。

[root@xuexi ~]# rsync -R -r /var/./log/anaconda /tmp

这样,从点开始的目录都是相对路径,其相对根目录为目标路径。所以对于上面的示例,将在目标上创建/tmp/log/anaconda/*。

(4).对远程目录下已存在文件做一个备份。

[root@xuexi ~]# rsync -R -r –backup /var/./log/anaconda /tmp

这样在目标目录下,已存在的文件就被做一个备份,备份文件默认使用”~”做后缀,可以使用”–suffix”指定备份后缀。

[root@xuexi tmp]# ll log/anaconda/ total 3112
-rw——- 1 root root 6668 Jul 14 12:45 anaconda.log
-rw——- 1 root root 6668 Jul 14 11:44 anaconda.log~
-rw——- 1 root root 3826 Jul 14 12:45 ifcfg.log
-rw——- 1 root root 3826 Jul 14 11:44 ifcfg.log~
-rw——- 1 root root 1102699 Jul 14 12:45 journal.log
-rw——- 1 root root 1102699 Jul 14 11:44 journal.log~
-rw——- 1 root root 0 Jul 14 12:45 ks-script-1uLekR.log
-rw——- 1 root root 0 Jul 14 11:44 ks-script-1uLekR.log~
-rw——- 1 root root 0 Jul 14 12:45 ks-script-iGpl4q.log
-rw——- 1 root root 0 Jul 14 11:44 ks-script-iGpl4q.log~
-rw——- 1 root root 160420 Jul 14 12:45 packaging.log
-rw——- 1 root root 160420 Jul 14 11:44 packaging.log~
-rw——- 1 root root 27906 Jul 14 12:45 program.log
-rw——- 1 root root 27906 Jul 14 11:44 program.log~
-rw——- 1 root root 78001 Jul 14 12:45 storage.log
-rw——- 1 root root 78001 Jul 14 11:44 storage.log~
-rw——- 1 root root 197961 Jul 14 12:45 syslog
-rw——- 1 root root 197961 Jul 14 11:44 syslog~

可以使用”–backup-dir”指定备份文件保存路径,但要求保存路径必须存在。

[root@xuexi ~]# mkdir /tmp/log_back

[root@xuexi ~]# rsync -R -r –backup –backup-dir=/tmp/log_back /var/./log/anaconda /tmp

指定备份路径后,默认将不会加备份后缀,除非使用”–suffix”显式指定后缀,如”–suffix=~”。

[root@xuexi tmp]# tree /tmp/log_back/
/tmp/log_back/
└── log└── anaconda├── anaconda.log├── ifcfg.log├── journal.log├── ks-script-1uLekR.log├── ks-script-iGpl4q.log├── packaging.log├── program.log├── storage.log└── syslog

Linux rsync命令相关推荐

  1. linux配置rsync排除某些目录,10个linux rsync命令排除文件/目录

    Rsync (远程同步)是在Linux/unix系统中远程复制和同步文件和目录的最常用命令,借助rsync命令,你可以在不同的目录之间远程地复制和同步数据,跨磁盘和网络进行数据备份,在两个Linux机 ...

  2. Linux rsync命令详解

    rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.rsync使用所谓的"rsync算法"来使本地和远程两个主机之间的文件达到同步,这个算法只传送两 ...

  3. Linux rsync 命令参数详解

    1,在对rsync服务端配置结束以后,下一步就需要在客户端发出rsync命令来实现将服务器端的文件备份到客户端来.rsync是一个功能非常强大的工具,其命令也有很多功能特色选项,我们下面就对它的选项一 ...

  4. Linux rsync命令用法

    rsync 部署 rsync server部署配置文件修改: vim /etc/rsyncd.conf uid=root gid=root strict modes=yes port=873[d2] ...

  5. Linux 常用命令与教程

    http://c.biancheng.net/view/705.html C语言编程网的教程很好 还有菜鸟教程的 https://baike.baidu.com/item/PS/8850709 百度百 ...

  6. Rsync(远程同步):Linux中Rsync命令的10个实际示例

    转载来源:https://www.tecmint.com/rsync-local-remote-file-synchronization-commands/ Rsync的(远程同步)是最常用的命令复制 ...

  7. Linux安装rsync命令失败,rsync 常见错误与解决方法整理

    我们都是通过错误日志查看 在rsyncd.log里面或.err文件里面,大家可以用记事本打开查看. 注意windows下面我们需要给SvcwRsync用户,管理同步目录的所有权限,基本上这样就可以了 ...

  8. linux下rsync命令,Linux 命令之rsync命令详解

    rsync命令 rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.rsync使用所谓的"rsync算法"来使本地和远程两个主机之间的文件达到同步, ...

  9. linux手动安装rsync_在Linux/Unix上安装rsync并通过示例的方式介绍使用rsync命令

    本文介绍Rsync的功能,在Linux/Unix系统上安装rsync的方法,并通过示例的方式介绍使用rsync命令的方法. Rsync介绍及其功能 在rsync的手册页中,Rsync是一种快速且极其通 ...

最新文章

  1. 摊牌了,巴塞罗那自治大学3D视觉课件(免费获取)
  2. oracle导入到mysql命令_oracle数据库导入导出命令
  3. 机器学习内卷化:博士数量激增,本硕毕业生有点慌 | reddit热议
  4. Tomcat如何将项目发布到webapps目录下
  5. mysql ---- innodb-2-索引
  6. java 判断object类型_Java 类继承机制
  7. 【MFC系列-第16天】企业信息管理软件开发
  8. mysql 去掉默认约束_06. 默认约束-创建、添加和删除
  9. 一文搞懂 PyTorch 内部机制
  10. 不断的感悟、不断的学习、不断的成长
  11. 2018.09.28python学习第十三天part2
  12. python os popen_Python os.popen() 方法
  13. 孟小峰:大数据管理与数据思维
  14. JAVA day08 接口(interface),多态,instanceof
  15. 反射 java 例子 get_Java反射实例
  16. JGroups - 02架构概述
  17. 对PV操作问题的理解综合
  18. 可能促使您决定创建自定义数据绑定控件的一些原因:
  19. 基于51单片机超声波测距仪设计倒车雷达防撞报警器
  20. java压缩和解压ZIP和RAR文件踩坑实践

热门文章

  1. 省赛题目(4月23日)
  2. Linux网络新技术基石:eBPF and XDP
  3. 【UE Unreal Camera】【保姆级教程二】手把手教你通过UE获取摄像头帧数据
  4. 液晶屏幕,OLED屏幕,反应时间计算,RT,ResponseTime,响应时间
  5. 中原银行实时风控体系建设实践
  6. 微信小程序--优购商城项目(4)
  7. 《C语言深度剖析》学习笔记----C语言中的符号
  8. Excel每次打开文件都会出现一个空白sheet1文件的一个解决方法
  9. js使用广度优先给树形结构添加level
  10. jQuery酷炫的文字动画效果代码