rsync详细参数
1、-v,--verbose 详细模式输出,传输是的进度信息
2、-z,--compress 传输是进行压缩以提高传输效率,--comperess -level = NUM可以按级别压缩
3、-a,--archive 归档模式,表示以递归方式传输文件,并保持所有文件属性(等于-rtopgDl)
4、-r,--recursive 对子目录以递归模式,即目录下的所有目录都同样输出
5、-t,--times 保持文件时间信息
6、-o,--owner 保持文件属性信息
7、-p,--perms 保持文件权限
8、-g,--group 保持文件属组信息
9、-P,--progress 显示同步的过程及传输时的进度等信息
10、-D,--devices 保持设备文件信息
11、-l,--links 保留软连接
--version #查看版本信息
--bwlimit #设置限速【rsync、scp、ftp都有限速设置】
--delete #比较两目录保留相同的删除不同的!(尽量少用)
***服务端***
一、配置好双网卡,一块负责外网通信,一块负责内网维护
第二张网卡不需要dns等
二、检查软件是否安装(rpm -aq rsync),没有就安装(yum install rsync),检查版本(cat /etc/redhat - release),检查是否安装服务器(rpm -aq telnet)
三、创建/etc/rsyncd.conf文本,用于配置rsync属性信息,在文本下写入一下内容
uid = rsync #用户主(远端的命令要使用rsync访问共享目录)
gid = rsync #用户组
use chroot = no #安全相关的
max connections = 200 #最大链接数
timeout = 300 #超时时间
pid file = /var/run/rsyncd.pid #进程对应的进程号文件
lock file = /var/run/rsync.lock #锁文件
log file = /var/log/rsyncd.log #日志文件(出错)
[backup] #模块名称
path = /backup #服务器提供访问的目录
ignore errors #忽略错误
read only = false #可写
list = false #不能列表(不能使用ls类似的功能)
hosts allow = 192.168.11.0/24 #允许那些机器链接
hosts deny = 0.0.0.0/32 #禁用那些机器链接
auth users = rsync_backup #虚拟用户
secrets file = /etc/rsync.password #虚拟用户对应的账号及密码
四、创建rsync虚拟用户及启动虚拟用户
useradd rsync -s /sbin/nologin -M #创建虚拟用户
rsync --daemon #启用虚拟用户
五、创建rsync的/backup/即改变它的属主、属组关系
mkdir /backup/ #创建目录
chown rsync.rsync /backup/ #改变其的数主、属组关系
六、创建rsync的密码文件,并设置成只有root用户才有权限
touch /etc/rsync.password #创建
echo 'rsync_backup:oldboy' >>/etc/rsync.password #写入
chmod 600 /etc/rsync.password #修改其权限只有root能访问
***客户端***
一、安装telnet服务(yum install telnet -y),及检查服务端客户端防火墙是否关闭(/etc/init.d/iptables stop)
二、创建密码文本
echo 'oldboy' >/etc/rsync.password
三、进行推送服务端
1、创建/backup目录
mkdir /backup
touch {1..10} /backup
chmod 600 /etc/rsync.password #不设置只有root用户才能访问的话,每次传输都将输入密码
2、推送
方法一:rsync -az /backup/ [email protected]::backup/ --password-file=/etc/rsync.password
方法二:rsync -az /backup/ rsync://[email protected]/backup/ --password-file=/etc/rsync.password
注:外网ip负责提供用户访问,内网的ip负责推送
小结:
1、提示这个表示要么是服务端/etc/rsyncd.conf文件拒绝接入该ip地址或是文件配置有误
2、用户端的ip地址输入错误,或者是服务点未启用rsync服务
3、用户端的权限不够
3、服务端/backup或用户端/backup的文件权限配置有误,限制为文件传输
4、提示:rsync: chgrp "data" (in backup) failed: Operation not permitted (1),出现这个语句是因为rsyncd.conf没有配置fake super = yes
备注:查看进程
方法一:lsof -i :873
方法二:netstat -lntup|grep 873/rsync
关闭进程:pkill rsync
启动虚拟用户:rsync --daemon