(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 使用的信道协议。 指定替代rsh的shell程序。比如:ssh
--exclude=PATTERN 指定排除不须要传输的文件模式
以上为经常使用的參数:很多其它參数请自行man rsync 或查看资料地址: http://www.samba.org/ftp/rsync/rsync.html
vza相当于 vzrtopgDl
特别提示:
rsync -avz /opt/ /mnt #加/。仅仅同步文件夹内的内容
rsync -avz /opt /mnt #不加/。会将文件夹和文件夹内的内容一起同步
(4)server端配置: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 (server地址 须要同步的server的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(这个为自己电脑username)
secrets file = /usr/local/rsync/rsync.passwd
(7)启动rsyncserver:执行前都须要确保自己的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为server电脑的username 后面是server电脑ip :后面是要复制的文件夹 最后的那个是要拷贝到的路径 )
(10) 提示须要password,输入为对方server的password!
(11) 同步推:rsync -avz /test/ root@192.168.11.207:/home/public/
(12) rsync -avz --delete root@192.168.11.207:/home/public /test/ --delete 选项,表示client上的数据要与server端全然一致,假设 linuxsirhome文件夹中有server上不存在的文件,则删除。终于目的是让linuxsirhome文件夹上的数据全然与server上保持一致;用的时候要 小心点。最好不要把已经有重要数所据的文件夹,当做本地更新文件夹,否则会把你的数据所有删除。
(13) --password-file=/etc/rsyncd.secrets
(14) rsync -avz --password-file =/etc/rsync.password root@192.168.11.207:/home/public/ /test/
免password拷贝方式: (通过ssh免password拷贝)
(15)rsync -avz -e ssh root@192.168.11.207:/home/public/ /test/
免password登陆
(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