首页 > 代码库 > Rsync同步工具安装文档

Rsync同步工具安装文档


(1)下载Rsync源码进行安装

(2)1’   cd rsync

     2’   ./configure   --prefix=/usr/local/rsync

     3’   make

     4’   make install(可能需要权限,加上sudo解决)

(3) Rsync命令同步参数选项(了解)
  rsync [OPTION...] SRC ... DEST
  常用参数选项说明:
  -v, --verbose 详细模式输出,传输时的进度等信息
  -z, --compress 传输时进行压缩以提高传输效率,--compress-level=NUM可按级别压缩
  -r, --recursive 对子目录以递归模式,即目录下的所有目录都同样传输,注意是小写r
  -t, --times 保持文件时间信息
  -o, --owner 保持文件属主信息
  -p, --perms 保持文件权限
  -g, --group 保持文件属组信息
  -P, --progress 显示同步的过程及传输时的进度等信息
  -a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rtopgDl 
  -D, --devices 保持设备文件信息
  -l, --links 保留软链接
  -e, --rsh=COMMAND 使用的信道协议, 指定替代rshshell程序。例如:ssh 
  --exclude=PATTERN 指定排除不需要传输的文件模式

    以上为常用的参数:更多参数请自行man rsync 或查看资料地址: http://www.samba.org/ftp/rsync/rsync.html
vza相当于 vzrtopgDl

特别提示:
  rsync -avz /opt/ /mnt #/,只同步目录内的内容
  rsync -avz /opt /mnt #不加/,会将目录和目录内的内容一起同步

(4)服务器端配置:cd /usr/local/rsync   

(5)  echo  rsync-pwd >/usr/local/rsync/rsync.passwd(如果需要权限的话,改为sudo  su  root 后执行该命令)

(6)  chmod 600 rsync.passwd

(7)   vi  /usr/local/rsync.conf   加入如下内容:

uid = root

gid = root

use chroot = no

max connections = 10000

strict modes = yes

address = 192.168.11.73  (服务器地址 需要同步的服务器的ip地址)

pid file = /var/run/rsyncd.pid

lock file = /var/run/rsync.lock

log file = /var/log/rsyncd.log

[public]

path = /home/public   (需要同步的目录)

comment = web file

ignore errors

read only = no

write only = no

hosts allow =*

list = false

uid = root

gid = root

auth users = root,HeQiang(这个为自己电脑用户名)

secrets file = /usr/local/rsync/rsync.passwd

(7)启动rsync服务器:运行前都需要确保自己的rsync是否打开   ps -ef|grep rsync

 /usr/local/rsync/bin/rsync  --daemon --config=/usr/local/rsync/rsync.conf 

(8) sudo su root   

(9) rsync -avz HeQiang@192.168.11.73:/home/public/ /test/   (HeQiang为服务器电脑的用户名  后面是服务器电脑ip  :后面是要复制的目录   最后的那个是要复制到的路径  )

(10) 提示需要密码,输入为对方服务器的密码!

(11) 同步推:rsync -avz  /test/  root@192.168.11.207:/home/public/

(12) rsync -avz --delete root@192.168.11.207:/home/public /test/  --delete 选项,表示客户端上的数据要与服务器端完全一致,如果 linuxsirhome目录中有服务器上不存在的文件,则删除。最终目的是让linuxsirhome目录上的数据完全与服务器上保持一致;用的时候要 小心点,最好不要把已经有重要数所据的目录,当做本地更新目录,否则会把你的数据全部删除;

(13) --password-file=/etc/rsyncd.secrets

(14)  rsync -avz --password-file =/etc/rsync.password root@192.168.11.207:/home/public/ /test/

免密码拷贝方式: (通过ssh免密码拷贝)

(15)rsync -avz -e ssh root@192.168.11.207:/home/public/ /test/

免密码登陆

(16)ssh-keygen -t dsa(一直enter)

(17)cd .ssh/

(18)scp id_dsa.pub root@192.168.11.207:~/id_dsa_hostname.pub(hostname为自己电脑名字)

(19)ssh root@192.168.11.207

(20)cat id_dsa_hostname.pub>>.ssh/authorized_keys

Rsync同步工具安装文档