rsync进阶

传输方式

rsync有三种传输方式

1.本机传输

1
2
3
4
5
#将/etc的资料备份到/tmp/etc中
rsync -av /etc /tmp
-a 表示保留同步文件的所有属性
-v 表示显示详细的传输过程
-z 表示使用压缩方式传输

2.通过ssh传输

使用一个冒号表示使用ssh传输

1
2
#将host的/etc备份到本地主机的/tmp/etc中
rsync -av user@host:/etc /tmp

3.通过rsync提供的daemon传输

使用两个冒号表示使用rsync daemon形式传输
rsync服务器需启动873端口

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#vim /etc/rsyncd.conf 该文件不会自动创建
uid=root
gid=root
log file=/var/log/rsyncd.log
pid file=/var/run/rsyncd.pid
lock file=/var/run/rsync.lock
secrets file=/etc/rsyncd.passwd #设定密码文件
hosts deny=172.16.78.0/22 #设定禁止访问的主机/网段
`
[www]
comment=have fun
path=/home/projects
read only=no
auth users=work #允许用户work访问www模块
#vim /etc/rsyncd.passwd
work:123456
#chmod 600 /etc/rsyncd.passwd 只有文件所有者才能写或读
#rsync --daemon 启动rsync守护进程
#rsync -avz host::www/dir /tmp 将host主机的www模块下的dir目录复制到/tmp/dir下
#rsync -avz /tmp/dir host::www 将/tmp/dir复制到host主机的www模块下

问题

  1. rsync -avz ./ 目的地
    发现传递后,所有以.开头的隐藏文件都没传过来,如果要传递隐藏文件,那么需要将./
    改为./.
    https://gxnotes.com/article/88308.html

参考

https://books.google.co.jp/books?id=OdXHBQAAQBAJ&pg=SA11-PA54&lpg=SA11-PA54&dq=rsync+%E4%B8%A4%E4%B8%AA%E5%86%92%E5%8F%B7&source=bl&ots=KYsHI8SGda&sig=gkRNF0l2VsCrtqIhP4WmZVUlpds&hl=zh-CN&sa=X&ved=0ahUKEwjvvL_-9IDVAhWDy7wKHbYFB-UQ6AEISzAG#v=onepage&q=rsync%20%E4%B8%A4%E4%B8%AA%E5%86%92%E5%8F%B7&f=false
http://man.linuxde.net/rsync