标签:系统 rsync常用选项 val test 用户名 number 显示 ash ota
rsync
是linux
系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync
可以远程同步,支持本地复制,或者与其他SSH
、rsync
主机同步。
rsync
支持很多特性:
rsync
会复制全部内容,但在下一次只传输修改过的文件。rsync
在传输数据的过程中可以实行压缩及解压缩操作,因此可以使用更少的带宽scp
、ssh
等方式来传输文件,当然也可以通过直接的socket
连接rsync
命令来同步系统文件之前要先登录remote
主机认证,认证过程中用到的协议有2种:
ssh
协议rsync
协议
rsync server
端不用启动rsync
的daemon
进程,只要获取remote host
的用户名和密码就可以直接rsync
同步文件rsync server
端因为不用启动daemon
进程,所以也不用配置文件/etc/rsyncd.conf
ssh
认证协议跟scp
的原理是一样的,如果在同步过程中不想输入密码就用ssh-keygen -t rsa
打通通道
#这种方式默认是省略了 -e ssh 的,与下面等价: rsync -avz /SRC -e ssh root@172.16.12.129:/DEST -a //文件宿主变化,时间戳不变 -z //压缩数据传输 #当遇到要修改端口的时候,我们可以: rsync -avz /SRC -e "ssh -p2222" root@172.16.12.129:/DEST #修改了ssh 协议的端口,默认是22
#安装rsync [root@localhost ~]# yum -y install rsync #Rsync的命令格式常用的有以下三种: rsync [OPTION]... SRC DEST rsync [OPTION]... SRC [USER@]HOST:DEST rsync [OPTION]... [USER@]HOST:SRC DEST #对应于以上三种命令格式,rsync有三种不同的工作模式: 1)拷贝本地文件。当SRC和DES路径信息都不包含有单个冒号":"分隔符时就启动这种工作模式。如: [root@localhost ~]# sync -avz jdk-8u281-linux-x64.tar.gz /tmp/ sync: invalid option -- ‘a‘ Try ‘sync --help‘ for more information. [root@localhost ~]# rsync -avz jdk-8u281-linux-x64.tar.gz /tmp/ sending incremental file list jdk-8u281-linux-x64.tar.gz sent 143,083,590 bytes received 35 bytes 22,012,865.38 bytes/sec total size is 143,722,924 speedup is 1.00 [root@localhost ~]# ls /tmp/ jdk-8u281-linux-x64.tar.gz 2)使用一个远程shell程序(如rsh、ssh)来实现将本地机器的内容拷贝到远程机器远程机需要安装rsync。当DST路径地址包 含单个冒号":"分隔符时启动该模式。如: [root@localhost ~]# rsync -avz test 192.168.248.200:/opt/ 3)使用一个远程shell程序(如rsh、ssh)来实现将远程机器的内容拷贝到本地机器。当SRC地址路径 包含单个冒号":"分隔符时启动该模式。如: [root@localhost ~]# rsync -avz 192.168.248.200:/opt/file /opt/ rsync常用选项: -a, --archive #归档 -v, --verbose #显示详细输出 -q, --quiet #静默模式 -r, --recursive #递归 -p, --perms #保持原有的权限属性 -z, --compress #在传输时压缩,节省带宽,加快传输速度 --delete #在源服务器上做的删除操作也会在目标服务器上同步
系统 | IP | 安装应用 |
Centos8 | 192.168.248.202 | rsync |
Centos8 | 192.168.248.200 | rsync |
基于ssh协议本地同步
如果目的地没有这个文件,系统会自动创建这个文件,如果有这个文件只会同步不一样的内容
#同步目录 [root@localhost ~]# mkdir -p a/{b/{d,e},c/{f,g}} [root@localhost ~]# tree a a ├── b │ ├── d │ └── e └── c ├── f └── g #同步一个文件 [root@localhost ~]# rsync -avz a /opt/dirTest [root@localhost ~]# tree /opt/dirTest/ /opt/dirTest/ └── a ├── b │ ├── d │ └── e └── c ├── f └── g #同步多个文件 [root@localhost ~]# rsync -avz test a /opt/testDir1 [root@localhost ~]# tree /opt/testDir1/ /opt/testDir1/ ├── a │ ├── b │ │ ├── d │ │ └── e │ └── c │ ├── f │ └── g └── test
基于sync同步
[root@localhost ~]# rsync -avz test a 192.168.248.200:/opt/TestDir [root@Centos8 ~]# tree /opt /opt └── TestDir ├── a │ ├── b │ │ ├── d │ │ └── e │ └── c │ ├── f │ └── g └── test
标签:系统 rsync常用选项 val test 用户名 number 显示 ash ota
原文地址:https://www.cnblogs.com/diqiyao/p/14751232.html