1. create user on every server(root login):
useradd syncuser -g apache
passwd syncuser
# set sync folder pemission
chown -R syncuser.apache /opt/syncuser
chmod -R 770 /opt/syncuser
2. on every src server(syncuser login):
# create key
ssh-keygen -t rsa
# pub id_rsa to every src server
ssh syncuser@192.168.1.102 "mkdir .ssh; chmod 0700 .ssh"
scp ~/.ssh/id_rsa.pub syncuser@192.168.1.102:~/.ssh/id_rsa.pub
ssh syncuser@192.168.1.102 "cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys2"
3. try again, needn't password.
ssh syncuser@192.168.1.102 "touch /tmp/test.txt"
4. rsync files
rsync --delete --stats -ago --exclude "/log" src/ cco@192.168.1.102:~/desc/
rsync --delete --stats -ago --exclude "/log" src/ cco@192.168.1.103:~/desc/
5. make sure that:
(1) use src/ to just sync sub files, not this folder
(2) use --exclude to keep some folder on desc folder(e.g. log)
Exclude pattern ref: http://www.blowfisher.net/wiki/tech-notes/rsync-exclude-pattern