10.28 rsync工具介绍
1. 安装 rsyns命令:
[root@hao-001 ~]# yum -y install rsync
[root@hao-02 ~]# yum -y install rsync
2. 拷贝 原文件(passwd),到指定目录(tmp)下,并重命名为1.txt :
[root@hao-001 ~]# rsync -av /etc/passwd /tmp/1.txt
准备两个机器:A机器192.168.223.128 B机器192.168.223.129
3. 拷贝 A机器原文件(passwd),到B机器远程用户(/tmp)下,并重命名为1.txt :
rsync -av 原文件目录/原文件 远程用户@远程ip:目标目录/自定义目标文件名
[root@hao-001 ~]# rsync -av /etc/passwd root@192.168.47.137:/tmp/1.txt
10.29 rsync常用选项(上)
rsync常用选项:
-a 包含这些选项: -r t p l g o D
-r 同步目录时要加上,类似cp时的-r选项
-v 同步过程可视化
-l 保留软连接(-a中包含-l)
-L 同步软链接文件时,会把软链接文件指向的源文件给同步到目标目录下
-p 保持文件的权限属性
-o 保持文件的属主
-g 保持文件的属组
-D 保持设备文件信息
-t 保持文件的时间属性
--delte 删除目标目录(DEST)中,原目录(SRC)没有的文件
--exclude 过滤掉指定文件(如--exclude “logs”会把文件名包含logs的文件或者目录过滤掉,不同步)
-P 显示同步过程,比如速率/进程/百分比传输速度(比-v更加详细)
-u 加上该选项后,如果目标目录(DEST)中的文件,比原目录(SRC)新,则不同步
-z 传输时压缩(同步到目标目录自动解压,这个参数用于减少带宽的!)
10.30 rsync常用选项(下)
1. -av 参数 同步目录,并重命名 :
-a 包含这些选项: -r t p l g o D
[root@hao-001 ~]# rsync -av 原目录 目标目录
[root@hao-001 ~]# rsync -av /root/mulu/ /tmp/mulu_dest/
2. -L 参数 同步目录,并重命名;同时还要把原目录下软链接文件指向的源文件拷贝到目标目录 :-L 同步软链接文件时,会把软链接文件指向的源文件给同步到目标目录下
[root@hao-001 ~]# rsync -avL 原目录 目标目录
[root@hao-001 ~]# rsync -avL /root/mulu/ /tmp/mulu_dest/
3. --delte 参数 删除目标目录中,原目录没有的文件 :
[root@hao-001 ~]# rsync -avL --delete /root/mulu/ /tmp/mulu_dest/
4. --exclude 参数 同步目录,过滤掉不同步指定文件类型(过滤掉.txt结尾的文件 不同步):
--exclude 过滤掉指定文件(如--exclude “txt”会把文件名包含logs的文件或者目录过滤掉,不同步的意思)
[root@hao-001 ~]# rsync -avL --exclude "*.txt" /root/mulu/ /tmp/mulu_dest/
5. --exclude 参数 过滤多个指定的文件类型(过滤以.txt结尾和过滤掉logs开头的文件 不同步):
[root@hao-001 ~]# rsync -avL --exclude "*.txt" --exclude "*logs" /root/mulu/ /tmp/mulu_dest/
6. -P 参数 同步目录,同时可视化打印出速率进程百分比 :
-P 显示同步过程,比如速率进程百分比传输速度(比-v更加详细)
[root@hao-001 ~]# rsync -avP /root/mulu/ /tmp/mulu_dest/
7. -u 参数 如果目标目录中的文件比原目录新(更改的日期新),则不同步 :
[root@hao-001 ~]# rsync -avPu /root/mulu/ /tmp/mulu_dest/
8. -z 参数 同步传输时压缩 :
[root@hao-001 ~]# rsync -avPz /root/mulu/ /tmp/mulu_dest/
10.31 rsync通过ssh同步
1. 拷贝 原文件(passwd),到指定目录(tmp)下,并重命名为1.txt :
[root@hao-001 ~]# rsync -av /etc/passwd /tmp/1.txt
推文件:
2. 拷贝 原文件(passwd),到指定远程用户目录(tmp)下,并重命名为1.txt :
rsync -av 本地目录/本地原文件 远程用户@远程ip:远程目录/远程重命名目标文件
[root@hao-001 ~]# rsync -av /etc/passwd root@192.168.223.129:/tmp/1.txt
拉文件:
3. 拷贝 远程用户原文件(passwd),到本地目录(tmp)下,并重命名为1.txt :
rsync -av 指定用户@远程ip:远程目录/远程原文件 本地目录/本地重命名目标文件
[root@hao-001 ~]# rsync -av root@192.168.223.129:/etc/passwd /tmp/1.txt
4. 指定远程用户端口(-e "ssh -p 22" 指定远程用户ip端口) :
rsync -av -e "ssh -p 指定端口" 指定用户@远程ip:远程目录/远程原文件 /本地目录/本地重命名目标文件
[root@hao-001 ~]# rsync -av -e "ssh -p 22" root@192.168.223.129:/etc/passwd /tmp/1.txt
远程 指定 ip端口:
[root@hao-001 ~]# ssh -p 端口 ip
[root@hao-001 ~]# ssh -p 22 192.168.223.129
[root@hao-001 ~]# ssh -p 22 root@192.168.223.129