rsync+ssh远程免密码增量同步资源

远程免密码增量同步资源

一:免密码

有两台机器A和B,想在机器A上远程B,而不需要密码。步骤如下

1:生成公钥文件

机器A上执行ssh-keygen -t rsa 然后一直回车即可。会在~/.ssh目录下生成id_rsa和id_rsa.pub文件。

2:拷贝公钥文件到机器B

将id_rsa.pub文件拷贝到机器B上的~/.ssh目录下(目录没有就创建),重命名为authorized_keys,

如果已有这个文件则需要在这个文件后面将id_rsa.pub的内容追加进来。

保证authorized_keys的权限是644, chmod 644 authorized_keys

将id_rsa.pub文件拷贝到机器B上的~/.ssh目录下(目录没有就创建)远程拷贝,

机器A上执行

scp ~/.ssh/id_rsa.pub username@B_IP:~/.ssh/id_rsa.pub

然后到机器B上执行

cat ~/.ssh/id_rsa.pub  >> ~/.ssh/authorized_keys

就大功告成了。

二:rsync增量同步

机器A上执行以下命令,就达到了增量同步的目的。

rsync -avz --exclude=zz /src_test/ username@B_IP:/dest_test/

其中/src_test/是机器A上的源目录, /dest_test/是机器B上的目的目录

--exclude=PATTERN 指定排除不需要传输的文件模式,上述例子是排除目录名或文件名为zz的资源。

当然*号匹配所有的,假如想排除扩展名为.log文件的话,--exclude=*.log 即可。--exclude可以同时用多个。


注:一和二中的B_IP是机器B的IP

你可能感兴趣的:(rsync+ssh远程免密码增量同步资源)