rsync工具介绍

  • 这个是个同步的工具,这个几乎每天都能用到。
  • 类似于cp 和cp不一样。不同机器传输文件,备份, 同台机器,A-B目录传输都可以。
  • 假设有一个A目录 和一个B目录 现在把A拷贝到B下去,A的数据一直在更新,每小时都要拷贝一次。浪费时间和 磁盘io 。
  • 我们用rsync 方便, 可以实现增量拷贝。它的同步只会把更新的文件给同步过来,不用覆盖,省时间。
  • 比如我们把/etc/passwd 拷贝到 /tmp/1.txt 就可以用rsync -av /etc/passwd /tmp/1.txt
  • 这里a表示的意思很多,v就是可视化。
  • 也可以支持远程去同步。 命令是 rsync -av /etc/passwd root@192.168.179.128:/tmp/1.txt 主要加了 root@ 这个是用户名,也可以是user1 yingxin1 后面加的是用户的ip 然后加冒号
  • 输入后会要发送用户的passwd 密码 输入密码就可以同步了。
  • rsync 还有其他好几种格式,。
  • OPTION 就是 刚才说的a 选项的意思。
  • SRC 源目录 DEST 目标目录 不仅仅是可以是文件,也可以是目录。
  • 也可以把SRC文件 或者目录 拷贝到远程的一个服务器上去。
  • 也可以省略用户,那样就是当前用户, 对方有没有这个用户是不管的。
  • 也可以反着拷贝。 先写远程的机器目录,然后拷贝到本地的机器下。
  • 还有个两个冒号的,

rsync 常用选项。

  • -a 包含-rtplgoD

  • r表示类似于cp的r 拷贝目录要加r选项。 这个也是。

  • v就是可视化、

  • l保留软链接,假如拷贝的目录下有一个软链接,这个软链接指向到了另一个目录下。

  • L 加上这个选项,就会把软链接本身 也拷贝过来

  • p 保持文件的权限属性。

  • o保持文件的属主,比如在A机器是www用户是属主,到了B 依然是。

  • g保持文件的属组。

  • D保持设备文件信息。

  • t保持文件的时间属性。 就是说你所有文件的时间 到了B 依然一样。

  • --delte 删除DEST 中 SRC没有的文件。删除目标目录中原目录里没有的文件, 如果想两台机器传输的东西过去后保持一模一样的状态,就会把多余的删除掉。

  • --exclude 过滤指定文件的。有时候备份一个目录, 有一个网站,里面有外部程序, 里面有日志 这些日志没用,就可以把这些过滤了,不复制过来,节省空间。

  • P 显示同步过程,比-v更详细。有时候传输文件,这个文件很大,用-v 不清楚具体的情况,就可以用P 同步过程传输的很详细。

  • -u 加上后 如果目标目录中的文件比原文件的新 就不同步。 就比如你的一个app 升级到了1.3版本,但是传输的是1.2版本 所以就不更新了。

  • z 就是传输时压缩,目的是更快,节省带宽。

  • 实际演示一下。

  • 把 root下的111作为源目录,把tmp下作为 目标目录。

  • 然后 同步一份过去 改个名字 叫 111.dest 这里要记得,以后同步目录的时候 在源目录的最后要加上/ 在目标目录下也加上/

  • l只是保留了软链接,所以这个软链接是失效的。 可以加上L a里面包含了l 加上L 会把l给覆盖掉。

  • 加上后 会报错,因为111下面 有两个软链接。

  • 然后把这两个软链接恢复正常 创建出来

  • 这就会显示 同步了 这两个。

  • 再查看 就发现 tmp下 这两个变成了正常文件 。

  • 在tmp下创建一个新的文件, 把111 同步到111.dest 但是111中没有新的文件,加上 --delte 就会把 111.dest下的给删除了。

  • 同样可以过滤。把所有txt的文件过滤出来, 不需要这些文件。 显示的只留下这些文件 不是带有txt的。

  • 也可以写多个 。

  • 加P 就是显示比v的更详细的 。

  • 加u 就是 目标目录中的文件比原文件的新 就不同步。

  • 创建一个666.txt 然后 在目标文件里写一些东西。 然后不加u 即使你的文件是最新的也会给你覆盖了。

  • z就是压缩 远程传输 文件很多 加上z 节省带宽,增加速度。

rsync 通过ssh同步

  • 之前说了五种格式, 其中一个是通过ssh去传输。。
  • 首先准备两个虚拟机。 然后能互相ping 通
  • 然后 同步过去 passwd 文件 但是另一个没有安装 要安装下。
  • 然后再同步。
  • 也可以反过来同步。 这两个操作就是拉文件和推文件。
  • 假如对方端口不是22 就可以 加选项 -e “ssh -p 22”