windows和ubuntu(linux)之间的rsync

1. windows上安装cwRsync,ubuntu上安装openssh和rsync

2. 建立home和.ssh目录
home建哪里自己定,我是直接在cwRsync目录下面建了个home。需要注意一下的是.ssh目录的建立,直接在资源管理器里面建是不行的,需要在cmd下:mkdir ".ssh",用引号。

3. 将cwRsync目录下cwrsync.cmd开头的几个set命令跑一遍

SETLOCAL
SET CWRSYNCHOME=%PROGRAMFILES%\CWRSYNC
SET HOME=[刚才建立的home,例如C:\Program Files\cwRsync\home\admin]
SET CWOLDPATH=%PATH%
SET PATH=%CWRSYNCHOME%\BIN;%PATH%

4. 生成private/public key:

ssh-keygen -t rsa -N ''

生成的key会在.ssh下面,可以拷到其它目录以方便使用,例如d:

5. 将key加到linux服务器的authorized_keys里面:
如果服务器账号下面本身没有authorized_keys,那么直接用下面这个命令即可:

rsync -av "/cygdrive/d/id_rsa.pub" [linux帐号]@[linux服务器地址]:.ssh/authorized_keys
如果已经有了,那么还是上传到一个新文件:
rsync -av "/cygdrive/d/id_rsa.pub" [linux帐号]@[linux服务器地址]:.ssh/new_key
然后再linux上把新的key加进去:
cat new_key >>authorized_keys

这里跑rsync的时候会提示你输入linux帐号的密码,key上传以后就不需要了。

6. 将cwrsync.cmd模板复制成一个新的文件
例如:mysync.cmd,修改里面的home,然后再最后加入实际需要跑的rsync命令。例如我这个是从linux服务器sync到我windows机器:

rsync -avz [linux帐号]@[linux服务器地址]:[服务器路径] [本地cygwin式路径,例如:/cygdrive/d/....]

从win同步到linux则把两个路径换一下位置就行了。

7. 然后就可以直接跑mysync.cmd了。

看了评论澄清一下,2-5步其实是配置ssh免密码登录到linux,实际以后每次的同步就是跑一下第7步的脚本,如果需要增加新的同步目录,只需要编辑一下这个脚本加一行。2-5步对其它利用ssh免密码登录的同步方式或工具都是需要的。

转载于:https://my.oschina.net/ruralhunter/blog/98231

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值