<1> : rsync安装
Centos和rethat默认都是安装rsync服务
使用下面的命令检查rsync版本
rpm -qa |grep rsync
如果没有安装的话使用下面的命令安装
rpm -ivh rsync-3.0.9***
<2>:rsync配置
1 :cat /etc/xinetd.d/rsync
可以看到rsync服务默认开机不开启,可以把disable 修改成no
2: 创建一个文件 /etc/rsyncd.conf
手写以下内容:
strict modes =no -- 制定是否每次建立一个连接的时候都要强制进行密码验证 port = 873 -- rsync服务的端口 log file = /var/log/rsyncd.log -- 打印日志的地方(可以查看rsync传输过程中的错误信息)
[transfer] //模块名称 (必填, 名称任意) max connections = 5 -- 最多可以都多少个rsync客户端连接 uid = root -- 用户id gid = root -- 用户组 path = /data/software/ -- rsync客户端拷贝到或者rsync服务器传输的基础路径 ignore errors -- 有一个文件传输错误是否中断所有的传输 read only = no -- 即不允许客户端上传文件 write only = no -- 即不允许服务端写入文件 hosts allow = * -- 允许哪些主机连接到本rsync服务器(生产环境使用) auth users = root -- rsync认证的用户(是本服务器的用户,非客户端的用户) secrets file = /etc/rsyncd.secrets -- 上面的配置的用户的密码 |
3 : 创建密码文件
touch /etc/rsync.passwd
chmod 600 /etc/rsync.passwd 【只有所有者可读】
添加以下内容
Root:密码
<3>: 启动rsync服务器
开启防火墙端口
iptables -A INPUT -p tcp --dport 873 -j ACCEPT
启动rsync服务端
/usr/bin/rsync --daemon --config=/etc/rsyncd.conf
<4> : 基本使用
rsync [OPTION]... [USER@]HOST::SRC DEST
从远程rsync服务器中拷贝文件到本地机。当SRC路径信息包含"::"分隔符时启动该模式。
如:rsync -av root@172.16.78.192::trans/databack
rsync [OPTION]... SRC [USER@]HOST::DEST
从本地机器拷贝文件到远程rsync服务器中。当DST路径信息包含"::"分隔符时启动该模式。
如:rsync -av /databack root@172.16.78.192::trans
[OPTION]参数:
--progress是指显示出详细的进度情况
--archive 归档模式
--delete是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致。
--password-file=/etc/rsync.pass 这个很清楚了
--exclude 传输某个文件夹下的内容但是不包含某个目录