一、背景
在做国盛通项目的时候,有两套并行测试环境,因为基本架构采用的是供应商提供的程序,需要将两套banner图做同步,因为图片数量多,进GitLab版本控制进行分支策略管理,进而同步两套环境,意义不大,所以考虑服务器之间的同步。
二、环境与需求
环境:
主线测试环境:172.50.1.172(资讯接入服务器)
并行测试环境:172.50.1.132(资讯接入服务器)
操作系统:Windows Server 2008 R2
软件包:OpenSSH-Win64.zip
GitHub地址:https://github.com/PowerShell/Win32-OpenSSH/releases
需求:
将172.50.1.172的目录D:zzinfomszxdownloadqdymanage同步至172.50.1.132所对应的目录
三、开始安装
1.将解压之后的OpenSSH-Win64.zip放入至C:Program Files (x86)OpenSSH-Win64
2.开始安装,如图1所示,命令如下:
::打开cmd,安装sshd cd "C:Program Files (x86)OpenSSH-Win64" powershell.exe -ExecutionPolicy Bypass -File install-sshd.ps1 ::设置服务自动启动并启动服务 sc config sshd start= auto net start sshd
(图1)
3.设置环境变量
将 C:Program Files (x86)OpenSSH-Win64 追加到如图2所示的位置
(图2)
------------------------------以上操作,172.50.1.132和172.50.1.172都需要进行------------------------------
4.因为是132从172上取图片数据,所以172是OpnenSSH服务端,132是OpnenSSH客户端
以下开始配置免秘钥登录
::1.在132服务器上打开cmd,生成密钥对,一直回车 ssh-keygen -t rsa ::2.生成的公钥在C:UsersAdministrator.ssh(如果你是administrator用户),如图3所示 ::3.将在132上的id_rsa.pub拷贝至172服务器上C:UsersAdministrator.ssh目录上,并在该目录下,新建一个authorized_keys文件,注意没有后缀格式!!! ::4.将id_rsa.pub里面的内容拷贝至authorized_keys
图3
5.重要的一步,注释服务端172的一个配置C:ProgramDatasshssh_config,这个目录是隐藏目录,如图4所示
图4
5.重启服务端172 sshd服务
net stop sshd net start sshd
四、验证
在132上打开cmd,输入命令
ssh administrator@172.50.1.172
如图5所示,表示已经登录上
图5
五、同步172.50.1.172上的D:zzinfomszxdownloadqdymanage目录
batch脚本如下
@echo off echo "---------script:同步172.50.1.172qdymanage-------" echo "----------author by Michael Ho------------" echo "----------start bak_qdymanage----------" rd d:backupqdymanage /s /q md d:backupqdymanage C:WindowsSystem32xcopy.exe d:zzinfomszxdownloadqdymanage d:backupqdymanage /s /e rd d:zzinfomszxdownloadqdymanage /s /q echo "---------------end bak_qdymanage-------------" echo "-----------172_qdymanage deploy to 132_qdymanage-----------" scp -r administrator@172.50.1.172:d:zzinfomszxdownloadqdymanage d:zzinfomszxdownload echo "-------end-------" exit 0
六、加入Windows任务计划程序
略