Windows Linux 之间rsync同步CODE文件

一.环境
Windows:
OS:Microsoft Windows Web Server 2008 SP1
IP:192.168.88.197

Linux:
OS:CentOS release 6.4 (Final)
IP:192.168.88.238

二. Windows 下安装服务端软件并配置
1.cwRsyncServer(安装过程略),注意安装过程会创建一个启动服务的用户
启动cwsync
services.msc-找到RsyncServer 将启动类型改成自动,然后启动一下服务
2.配置cwrsync
创建同步目录
这里我新建的目录为: E:\sync

为新建目录赋权
右击目录sync选择安全点击编辑将SvcCWRSYNC添加进去并赋给所有权限

配置rsyncd.conf文件,目录路径如下
C:\Program Files (x86)\ICW

修改为如下配置
use chroot = false
strict modes = false
hosts allow = *
log file = rsyncd.log

# Module definitions
# Remember cygwin naming conventions : c:\work becomes /cygwin/c/work
#
[197bak]
path = /cygdrive/e/sync #路径需要转换为这里真实路径为E:\sync
read only = true
list  = no
hosts allow=192.168.88.238 #允许那些IP同步,多个IP用逗号分隔,允许所有直接是*
auth users = qssync #同步验证用户名
secrets file = etc/rsyncd.secrets #指定密码文件路径
UID = 0
GID = 0

创建密码文件
注意密码文件路径要和rsyncd.conf路径一致
etc/rsyncd.secrets(这个路径是相对路径)
真实物理路径为C:\Program Files (x86)\ICW\etc
编辑文件rsyncd.secrets格式如下
sync:Abc23332c2014

windows 下备份CODE
BAT脚本如下backup.bat
@echo off
set p=C:\Program Files\WinRAR
"%p%\rar" a  E:\sync\code%date:~,4%%date:~5,2%%date:~8,2%%time:~,2%%time:~3,2%%time:~7,1%.rar D:\app\code >>rar%date:~,4%%date:~5,2%%date:~8,2%%time:~,2%%time:~3,2%%time:~7,1%.log
forfiles /p "E:\sync" /d -7 /c "cmd /c echo deleting @file ... && del /f @path" >>rar%date:~,4%%date:~5,2%%date:~8,2%%time:~,2%%time:~3,2%%time:~7,1%.log

三.linux 端配置(这里Linux作为客户端)
1.安装Linux客户端(建议将selinux关闭)并配置
yum install rsync xinetd

配置
[root@zjqs-05 scripts]# vim /etc/xinetd.d/rsync

# default: off
# description: The rsync server is a good addition to an ftp server, as it \
#       allows crc checksumming etc.
service rsync
{
        disable = no
        flags           = IPv6
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/bin/rsync
        server_args     = --daemon
        log_on_failure  += USERID
}
将disable 由yes 改成no

创建密码文件
vim /etc/passwd.txt 内容如下
[root@zjqs-05 scripts]# cat /etc/passwd.txt
Abc23332c2014
这里的密码跟server端一致

创建同步脚本
[root@zjqs-05 scripts]# cat /export/scripts/rsync197.sh
#!/bin/sh
rsync -vzrtopg --port=873 --progress --delete --exclude-from '/export/scripts/exclude.txt'  sync@192.168.88.197::197bak /data/197bak --password-file=/etc/passwd.txt
#exclude-from 防止有些需要长期保留的。不需要同步的

exclude.txt内容如下
[root@zjqs-05 scripts]# cat /export/scripts/exclude.txt
bianfeng20140911.bak
bianfeng

建立任务计划
02 02 * * * /export/scripts/rsync197.sh >/export/scripts/rsync`date +%F`.log 2>&1

Windows Linux 之间rsync同步CODE文件的更多相关文章

  1. Windows服务器之间rsync同步文件

    两台windows7机器 server:192.168.12.104 client:192.168.12.103 目的:将server上的E盘的目录FYFR里面的内容定时同步到client上的D盘下F ...

  2. 需求:过滤下面这个网页里共723行 校对中里 行数为两位数的 行 并设置sz和rz在Windows和Linux之间发送和接收文件不用搭FTP

    需求:过滤下面这个网页里共723行 校对中里 行数为两位数的 行 并设置sz和rz在Windows和Linux之间发送和接收文件不用搭FTP 需求:过滤下面这个网页里共723行 校对中里 行数为两位数 ...

  3. [转]在Windows中配置Rsync同步

    在Windows中配置Rsync同步 Rsync是一款不错的文件免费同步软件,可以镜像保存整个目录树和文件系统,同 时保持原来文件的权限.时间.软硬链接.第一次同步时 rsync 会复制全部内容,下次 ...

  4. vim与windows/linux之间的复制粘贴小结

    vim与windows/linux之间的复制粘贴小结 用 vim这么久了,始终也不知道怎么在vim中使用系统粘贴板,通常要在网上复制一段代码都是先gedit打开文件,中键粘贴后关闭,然后再用vim打开 ...

  5. windows环境下svn同步web文件[转]

    windows环境下svn同步web文件 SVN在团队开发中使用非常普遍,是一个很方便的版本控制系统. 如果要是能将SVN服务器上的数据自动发布到Web服务器,那将是整个项目开发.测试更加便捷.利用S ...

  6. 【Linux】rsync同步文件 & 程序自启动

    rsync使用 1. 为什么使用rsync? rsync解决linux系统下文件同步时, 增量同步问题. 使用场景: 线上需要定时备份数据文件(视频资源), 使用rsync完成每天的增量备份. 参见: ...

  7. Linux之rsync同步工具介绍+inotify同步

    1.rsync介绍 Rsync是一款开源的.快速的.多功能的.可实现全量及增量的本地或远程数据同步备份的优秀工具.Rsync软件适用于unix/linux/windows等多种操作平台. rsync, ...

  8. windows 下的 Rsync 同步

    整理一下 windows 下的 rsync 文件同步. Rsync下载地址: 链接:https://pan.baidu.com/s/1nL0Ee_u76ytWKUFMeiKDIw 提取码:52in 一 ...

  9. 通过WSL使用rsync同步本文件

    1.安装WLS 主要参考Windows10上使用Linux子系统(WSL)这篇文章进行安装,不要通过lxrun /install /y去安装,这种方法安装貌似没有wsl命令. 先把win 10 版本升 ...

随机推荐

  1. CSS3的calc()使用

    CSS3的calc()使用 calc是英文单词calculate(计算)的缩写,是css3的一个新增的功能,用来指定元素的长度.比如说,你可以使用calc()给元素的border.margin.pad ...

  2. Rxjava的基本使用

    gradle配置: compile 'io.reactivex:rxjava:1.0.9' 观察者: Observer<String> observer = new Observer< ...

  3. ready和onload的区别

    $(document).ready()和window.onload在表面上看都是页面加载时我们就去执行一个函数或动作,但是在具体的细节上$(document) ready()和window onloa ...

  4. js 打印星星金字塔

    /** * * 第一行: * * 第二行: *** * 第三行: ***** * 第四行: ******* * 第五行: ********* * */ document.write('<p al ...

  5. 通过gradle来导入jar包

    1.通过gradle配置第三方jar包 我们看到,每个module都有一个build.gradle文件,它其实是对应module的配置文件.关于build.gradle文件中具体内容的含义,我们将在最 ...

  6. 编写安装中断7ch的中断例程:将一个以0结尾的字符串,转化为大写

    中断的安装程序: assume cs:code code segment start: mov ax, cs mov ds, ax mov si, offset chstr mov es, ax mo ...

  7. Java注释

    注释:用于注解说明解释程序的文字.提高了代码的阅读性. 一:单行注释 "//注释文字" 二:多行注释 "/*注释文字*/" 三:文档格式 "/**注释 ...

  8. SQL Server系统存储过程

    1. execute sp_databases   查询当前所有数据库大致信息(名称,大小等) 2. exec sp_helpdb [Myschool] 返回数据库的所有详细信息(数据库大小,位置,文 ...

  9. SQL增删改语句常用

    创建table: create table tab_name( col1 type; 约束:主键-外键-非空-检查-唯一 col2 type; ); 删除表 : drop table tab_name ...

  10. 从0和1到Python

    什么是编程语言? 举一个例子: 如果我们不会英语,和一个不会中文的老外交流,怎么办?找个翻译. 电脑只懂0和1组成的机器语言. 用0和1告诉计算机做事很累:人类语言易了解,学习快,效率高. 如果定义一 ...