实现目标: A 服务器上 /opt/web 目录,与B服务器上 /opt/web目录实现同步。即:B主动与A进行同步。 OS: Reaht AS4 A Server 192.168.1.2 /opt/web B Server 192.168.1.3 /opt/web 一. A Server config 1.rsync 系统自带, 需要使用 --deamon 方式进行启动,服务端口是 TCP 873 2. vi /etc/xinetd.d/rsync 修改 disable =yes 为 disable =no ,修改后的文件如下 # default: off # description: The rsync server is a good addition to an ftp server, as it \ # allows crc checksumming etc. service rsync { disable = no socket_type = stream wait = no user = root server = /usr/bin/rsync server_args = --daemon log_on_failure += USERID } 3. service xinetd restart,重启 xinted 服务 4. 编辑主要配置文件 /etc/rsyncd.conf vi /etc/rsyncd.conf uid = nobody gid = nobody use chroot = no max connections = 4 pid file = /var/run/rsyncd.pid lock file = /var/run/rsyncd.lock log file = /var/log/rsyncd.log [web] path = /opt/web ignore errors read only = true list = false hosts allow = 192.168.0.0 # 允许的IP地址 hosts deny = 0.0.0.0/32 # 禁止的IP 地址 auth users = backup # 认证用户名,此例是 backup secrets file = /etc/backup.pass #认证用户的密码文件 5 编辑服务器的密码文件 /etc/backup.pass vi /etc/backup.pass backup:123456 6. chmod 400 /etc/backup.pass 二. B Server config 1. 编辑rsync连接时的密码文件 /etc/rsync_client.pass vi /etc/rsync_client.pass 123456 # 只需要配置连接时使用的密码即可,必须与A服务器上定义的密码相同. 2. chmod 600 /etc/rsync_client.pass 3. 使用 rsync 命令连接服务器,实现文件同步 rsync -vzrtopg --progress --delete --password-file=/etc/rsync_client.pass backup@192.168.1.2::web /opt/web 4. 使用 --execlude= 排除不需要同步的文件后缀名 rsync -vzrtopg --progress --delete --password-file=/etc/rsync_client.pass --exclude="*.tmp" backup@192.168.1.2::web /opt/web 5. 使用 --execlude-from= 排除不需要同步的目录 [root@ASB opt]# rsync -vzrtopg --progress --delete --password-file=/etc/rsync_client.pass --exclude-from=/opt/pcdir backup@192.168.1.2::web /opt/web /opt/pcdir 文件的内容如下 cat /opt/pcdir temp/ 参数说明 -vzrtopg里的 v是verbose, z是压缩, r是recursive, topg都是保持文件原有属性如属主、时间的参数 ----progress 是指显示出详细的进度情况 --delete 是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致 --exclude="*.tmp" 不包含某些文件 --execlude-from= 排除不需要同步的目录 --password-file 指定CLIENT端密码文件存放路径 /opt/web/ 指定CLIENT端存放镜象目的路径 选项说明 -v, --verbose 详细模式输出 -q, --quiet 精简输出模式 -c, --checksum 打开校验开关,强制对文件传输进行校验 -a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD -r, --recursive 对子目录以递归模式处理 -R, --relative 使用相对路径信息 rsync foo/bar/foo.c remote:/tmp/ 则在/tmp目录下创建foo.c文件,而如果使用-R参数: rsync -R foo/bar/foo.c remote:/tmp/ 则会创建文件/tmp/foo/bar/foo.c,也就是会保持完全路径信息。 -b, --backup 创建备份,也就是对于目的已经存在有同样的文件名时,将老的文件重新命名为~filename。可以使用--suffix选项来指定不同的备份文件前缀。 --backup-dir 将备份文件(如~filename)存放在在目录下。 -suffix=SUFFIX 定义备份文件前缀 -u, --update 仅仅进行更新,也就是跳过所有已经存在于DST,并且文件时间晚于要备份的文件。(不覆盖更新的文件) -l, --links 保留软链结 -L, --copy-links 想对待常规文件一样处理软链结 --copy-unsafe-links 仅仅拷贝指向SRC路径目录树以外的链结 --safe-links 忽略指向SRC路径目录树以外的链结 -H, --hard-links 保留硬链结 -p, --perms 保持文件权限 -o, --owner 保持文件属主信息 -g, --group 保持文件属组信息 -D, --devices 保持设备文件信息 -t, --times 保持文件时间信息 -S, --sparse 对稀疏文件进行特殊处理以节省DST的空间 -n, --dry-run现实哪些文件将被传输 -W, --whole-file 拷贝文件,不进行增量检测 -x, --one-file-system 不要跨越文件系统边界 -B, --block-size=SIZE 检验算法使用的块尺寸,默认是700字节 -e, --rsh=COMMAND 指定替代rsh的shell程序 --rsync-path=PATH 指定远程服务器上的rsync命令所在路径信息 -C, --cvs-exclude 使用和CVS一样的方法自动忽略文件,用来排除那些不希望传输的文件 --existing 仅仅更新那些已经存在于DST的文件,而不备份那些新创建的文件 --delete 删除那些DST中SRC没有的文件 --delete-excluded 同样删除接收端那些被该选项指定排除的文件 --delete-after 传输结束以后再删除 --ignore-errors 及时出现IO错误也进行删除 --max-delete=NUM 最多删除NUM个文件 --partial 保留那些因故没有完全传输的文件,以是加快随后的再次传输 --force 强制删除目录,即使不为空 --numeric-ids 不将数字的用户和组ID匹配为用户名和组名 --timeout=TIME IP超时时间,单位为秒 -I, --ignore-times 不跳过那些有同样的时间和长度的文件 --size-only 当决定是否要备份文件时,仅仅察看文件大小而不考虑文件时间 --modify-window=NUM 决定文件是否时间相同时使用的时间戳窗口,默认为0 -T --temp-dir=DIR 在DIR中创建临时文件 --compare-dest=DIR 同样比较DIR中的文件来决定是否需要备份 -P 等同于 --partial --progress 显示备份过程 -z, --compress 对备份的文件在传输时进行压缩处理 --exclude=PATTERN 指定排除不需要传输的文件模式 --include=PATTERN 指定不排除而需要传输的文件模式 --exclude-from=FILE 排除FILE中指定模式的文件 --include-from=FILE 不排除FILE指定模式匹配的文件 --version 打印版本信息 --address 绑定到特定的地址 --config=FILE 指定其他的配置文件,不使用默认的rsyncd.conf文件 --port=PORT 指定其他的rsync服务端口 --blocking-io 对远程shell使用阻塞IO -stats 给出某些文件的传输状态 --progress 在传输时现实传输过程 --log-format=formAT 指定日志文件格式 --password-file=FILE 从FILE中得到密码 --bwlimit=KBPS 限制I/O带宽,KBytes per second -h, --help 显示帮助信息 本文出自 51CTO.COM技术博客 |
Linux rsync目录同步功能实现
转载于:https://www.cnblogs.com/lvsong/archive/2010/05/13/1775661.html
相关文章:

宏定义的布局约束
*自适应向布局约束的转化关闭*/ #define PREPCONSTRAINTS(VIEW) [VIEW setTranslatesAutoresizingMaskIntoConstraints:NO] #define CONSTRAIN(PARENT, VIEW, FORMAT) [PARENT addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:(FORMAT) options:0 metrics:nil…

项目中WebService使用Spring容器的配置
<context:component-scan base-package"com.huawei.support"> <context:include-filter type"annotation" expression"org.aspectj.lang.annotation.Aspect" /> </context:component-scan> 扫描采用注解…

java 静态代码块 多线程,Java多线程编程笔记10:单例模式
立即加载:“饿汉模式”立即加载就是指使用类的时候已经将对象创建完毕,常见的实现方法就是直接new实例化。也就是在调用方法前,实例就被创建了。示例代码如下所示:class MyObject{private static MyObject myObjectnew MyObject()…

创业笔记-Node.js入门之阻塞与非阻塞
阻塞与非阻塞 正如此前所提到的,当在请求处理程序中包括非阻塞操作时就会出问题。但是,在说这之前,我们先来看看什么是阻塞操作。 我不想去解释“阻塞”和“非阻塞”的具体含义,我们直接来看,当在请求处理程序中加入阻…

vs 添加ico图 到资源
有时候想用自己做的ico 文件作为程序的图标来取代VS 程序默认的图标;在VS2005 资源视图中,打开Icon 上右击-->Add resource -->Import -->选择自己的ico 文件会跳出个错误框,说VS不支持32 位彩色图片; 网上搜索说VS不支…

HIVE QL 杂记
最近要处理用户访问日志,需要从HIVE中取数据,写了一些HIVE QL,有一点小感想,记录在此。 1. 临时表 在HIVE中进行多表连接时,可以给一些临时表命名,这样有助于理清查询语句之间的逻辑,格式为&…

java和内存交互,java内存模型-内存间交互操作
前言本文是阅读周志明大佬的《深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)》第12章,12.3节Java内存模型得来的读书笔记。阅读告警😂😂😂,本文可能会有点枯燥,大部分内容都是对书中内容做一…

文件读写io操作范例
系统io读写,copy int main(int argc, char **argv) { if(argc ! 3) { printf("Usage: %s <src> <dst>\n", argv[0]); exit(0); } int fd1, fd2; fd1 open(argv[1], O_RDONLY); fd2 open(argv[2], O_CREAT | O_TRUNC | O_WRONLY); if(…

一步步教你编写redactor的插件
Redactor是一款JQuery框架下的所见即所得在线HTML编辑器,具有常用的功能如图片/文件上传、表格、格式化等等,不仅轻量级和跨浏览器,还支持各种平台如PC、Mac、iPad, iPhone、Android、Refrigerators,更重要的它能够自动保存、自动…

windows系统杀掉explorer.exe进程后黑屏
使用“Ctrl Shift ESC”打开任务管理器 文件----> 运行新任务---->运行explorer即可 转载于:https://www.cnblogs.com/mrnx2004/p/11065573.html

php 自动返回,PHP实现自动识别Restful API的返回内容类型
如题,PHP如何自动识别第三方Restful API的内容,自动渲染成 json、xml、html、serialize、csv、php等数据?其实这也不难,因为Rest API也是基于http协议的,只要我们按照协议走,就能做到自动化识别 API 的内容…

WebKit、Gecko使用图形库
2008年11月30日 星期日 上午 01:20阅读了之后,觉得作为浏览器内核WebKit、Gecko,为了能高效美观的显示页面的内容,选择适当的图形库非常重要。如果图形库选择不当,往往会导致页面上显示的文字、图片不美观,看起来总让人…
office使用技巧
Word绝招:一、 输入三个“”,回车,得到一条双直线;二、 输入三个“~”,回车,得到一条波浪线;三、 输入三个“*”或 “-”或 “#”,回车,惊喜多多;在单元格内输入now&…

怎样用matlab打开mw文,C# matlab混合编程 MWArray使用笔记
C# matlab混合编程徐凯Email:xukai19871105http://www.doczj.com/doc/1a6e191fff00bed5b9f31dbf.html这几天突然想搞一搞以前没有搞定的MATLABC#混合编程,今天把原来编写的代码拿出来看看,然后结合网上一些正确的和一些错误的代码看看&#x…

【Android OpenGL ES】阅读hello-gl2代码(二)Java代码
AndroidManifest.xml <?xml version"1.0" encoding"utf-8"?> <manifest xmlns:android"http://schemas.android.com/apk/res/android"package"com.android.gl2jni"><applicationandroid:label"string/gl2jni_ac…

activiti任务TASK
一、概要 设计TASK的表主要是:ACT_RU_TASK,ACT_HI_TASKINST(见参考-activiti表);任务主要有:人工任务(usertask),服务任务(servicetask)等;候选人…

matlab数值分析拟合实例,数值分析函数拟合matlab代码.doc
数值分析函数拟合matlab代码.doc 第一题MATLAB代码用SPLINE作图XI0204060810YI098092081064038X10012Y1NEWTON3XI,YI,X源代码见M文件Y2SPLINEXI,YI,XPLOTXI,YI, O ,X,Y1, R ,X,Y2, K 用CSAPE作图XI0204060810YI098092081064038X10012Y1NEWTON3XI,YI,X源代码见M文件PPCSAPEXI,YI…

ArrayList Iterator remove java.lang.UnsupportedOperationException
在使用Arrays.asList()后调用add,remove这些method时出现 java.lang.UnsupportedOperationException异常。这是由于Arrays.asList() 返回java.util.Arrays$ArrayList, 而不是ArrayList。Arrays$ArrayList和ArrayList都是继承AbstractList,rem…

android中方法调用super(..)的相关知识
java中的多态有重写 方法被子类重写后 父类的原方法就会被隐藏 当你又需要调用父类所定义的原方法 这个时候就可以用super来调用super调用指向了父类,在一些调用里可以很巧妙的利用,比如监听返回键了在onKeyDown的方法里,如果想让系统对back…

在使用Reference Source调试.Net 源代码时如何取消optimizations(代码优化)-翻译
当你在使用Reference Source functionality in VS 2008 调试.Net 的源代码的时候,你会发现很多变量没法再调试时查看。 这是因为源代码服务器上提供的代码默认是为最终销售优化过的(optimized )。这些值虽然你没法查看,但不会阻断…

java旅游网站毕业论文,基于JAVA技术的旅游网站的开发.doc
摘要: 这次毕设主要是为了实现基于JAVA技术的旅游网站的开发,方便人们近距离的出行游玩。网站的开发过程中用到了很多方法技术,最主要的是JAVA技术,用于编写后台的功能实现代码;框架采用的是Spring MVC,作为轻量级企业…

Spring 实践 -IoC
Spring 实践标签: Java与设计模式 Spring简介 Spring是分层的JavaSE/EE Full-Stack轻量级开源框架.以IoC(Inverse of Control 控制反转)和AOP(Aspect Oriented Programming 面向切面编程)为内核, 取代EJB的臃肿/低效/脱离现实. 主页http://spring.io/ IoC与DI IOC…

大话编程(一)
2013年1月15日 11:40:38 还有20分钟下班,实在忍不住了,想说点儿什么 编程入门的可以看看 (一)什么是0什么是1 有那么一堆叫半导体的东西,某个牛逼人用铜线连起来,组成了一个电路. 这个电路在一直通电的情况下,可以使某个点的电压保持不变, 如果这个点的电压大于某个值,就抽象为…

php 保存表单数据,使用jquery和php自动保存表单数据
我对PHP非常好,但是使用jQuery的总菜单,并且卡在自动保存表单数据中.自动保存功能在dummy.php中每30秒调用一次.我正在将用于处理的序列化表单数据( – >数据库)发送到savetest.php.此刻,我坚持这个问题:如何让savetest.php“监听”传入的数据并对其作出反应&…

Finalize/Dispose/Destructor
我总是会搞混这些东西,还是写下来帮助记忆。 Finalize 即Object.Finalize(),C#中不允许使用Finalize,析构器就等价于Finalize。 Destructor 析构器(Destructor)是在对象没有被引用的时候,由CLR自动调用的。…

linux 串口minicom配置使用
在minicom -s配置是记得取消硬件流控制。 1.minicom -o 配置文件 2.alias comminicom -o 配置文件 转载于:https://www.cnblogs.com/niceskyfly/p/5257713.html

POJ-1185 炮兵阵地 动态规划+状态压缩
由于递推的时候依赖于三个连续层的关系.一开始想着直接三重for循环,但是这里有个问题就是上一层的0位置上包括着上上层是0和1两种可能,而后者又对当前行有约束,因此该方法不行.当然有一个办法就是增加状态数,让状态能够表示是从1还是从0转移过来的.(这题有个解法是采用多进制的…

php字符串转换表达式,php处理字符串格式的计算表达式
有时候我们对每一种产品都有一个提成公式,而这个计算提成的公式是以字符串格式存在表中的当我们用这个计算公式时,他并不像我们写的:$a23*5;这样简单的能计算出结果,而它是个字符串所以,我们就必须把字符串转化为我们能…

JS函数式编程【译】5.2 函子 (Functors)
函子(Functors) 态射是类型之间的映射;函子是范畴之间的映射。可以认为函子是这样一个函数,它从一个容器中取出值, 并将其加工,然后放到一个新的容器中。这个函数的第一个输入的参数是类型的态射࿰…

[转]Introduction of iSCSI Target in Windows Server 2012
Introduction of iSCSI Target in Windows Server 2012 源地址:http://blogs.technet.com/b/filecab/archive/2012/05/21/introduction-of-iscsi-target-in-windows-server-2012.aspx The iSCSI Target made its debut as a free download for Windows 2008 R2 in A…