rsync and ssh automatic authentication

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



标签: shell, rsync, ssh
posted @ 2010-04-15 23:10 果果’er 阅读(210) 评论(3) 编辑 收藏

 回复 引用 查看   
#1楼[楼主]2010-04-17 12:08 | 果果’er      
SERVERS=(192.168.1.102 192.168.1.103)
for SERVER in ${SERVERS[*]}
do
echo "Test on ${SERVER}"
ssh cco@${SERVER} "touch /tmp/test.lock"
done

笔记本电脑排行榜http://www.518bijiben.com/
支持你
发表评论

昵称: [登录] [注册]

主页:

邮箱:(仅博主可见)

评论内容:

  登录  注册

[使用Ctrl+Enter键快速提交评论]

0 1713071 9oEoOsa7LTY=