技术改变世界 阅读塑造人生! - shaogx.com

This string was altered by TechBlog\Plugins\Example.; This is an example to show the potential of an offcanvas layout pattern in Bootstrap. Try some responsive-range viewport sizes to see it in action.

【Linux Rsync安装配置】

【Linux Rsync3.0  实用版安装】*安装环境:Linux  CentoS  5.3 *安装目的:Linux 各服务器之间同步文件,保持文件的一致性,也可以是群集服务器之间的同步方案。本文讲求简单,易操作,可行性。为初学者提供帮助。一、下载rsync版本;下载当前最新稳定版本:(虽然系统已经安装,我们这里使用下载编译的:)cd  /usr/src 下:... 全文

Linux rsync 配置 linux文件同步 linux 【Linux Rsync安装配置】 linux群集同步

LINUX—rsync 配置与详解

LINUX—rsyncrsync 官方站点[url]http://rsync.samba.org/[/url][url]http://samba.anu.edu.au/rsync/download.html[/url] [ WINDOWS 2003 RSYNC 服务端 ] rsync for windows download :[url]http://switch.dl.sourceforge.net/sourceforge/sereds/cwRsync_Server_2.0.10_Installer.zip[/url] 同步: 服务器端: 首先安装该服务的最新版 rsync-2.6.8.tar.gz 安装步骤: 1, tar zxvf rsync-2.6.8.tar.gz 2, cd rsync-2.6.8 3, ./configure –prefix= path 4, make ; make install 更改服务器端的配置文件 1,vi /etc/rsyncd.conf uid = root 指定运行该服务的权限 gid = root log file = /var/log/rsyncd.log 指定日志文件[mag_sync] 定义同步项目名 可以定义多个同步项目 path = /usr/local/apps/www/magazine/file 指定源路径 read only = no 是否只读 auth users = mag_sync 该同步项目的认证用户名 secrets file = /etc/rsync.pas 该同步项目的密码文件更改密码文件 vi /etc/rsync.pas文件格式为 用户名:密码 mag_sync:magazine_rsync@zcom.com更改密码文件的权限chmod +600 /etc/rsync.pas启动rsyncd服务/usr/local/rsync-42.0/bin/rsync --daemon rsync默认服务端口为873加入rc.local编辑/etc/rc.d/rc.local,在最后添加:/usr/local/bin/rsync --daemon 客户端: 编辑密码文件vi /etc/rsync.pasmagazine_rsync@zcom.com 注意该文件只有密码部份更改文件权限chmod +600 / etc/rsync.pasrsync-rvlHpogDtS --progress --delete --password-file=/etc/rsync.pas mag_sync@192.168.0.43::mag_sync /usr/local/apps/www/magazine/file将此脚本加入计划任务现将 rsync 的详细参数贡献给大家:-v, --verbose 详细模式输出 -q, --quiet 精简输出模式 -c, --checksum 打开校验开关,强制对文件传输进行校验 -a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD -r, --recursive 对子目录以递归模式处理 -R, --relative 使用相对路径信息 -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 显示帮助信息Win—rsync同步: 服务器端: 安装服务器端(过程略) 修改配置文件 use chroot = false strict modes = false hosts allow = * log file = rsyncd.log pid file = rsyncd.pid# Module definitions # Remember cygwin naming conventions : c:\work becomes /cygwin/c/work # [test] path = /cygdrive/c/work read only = false transfer logging = yes # 同步cococ音乐文件 [cococmusicfiles] path = e:/cococmusicfile/wma_music_file/ting_cococ_com_2005/0/1/9388 read only = false transfer logging = yes auth users = cococ_sync secrets file = c:/my.pas请注意只有路径的表示方法不同别忘了建密码文件,跟linux下完全一样 客户端: 1,建立密码文件(跟linux完全相同,略) 建立批处理:C:\Program Files\cwRsynccl\bin\rsync -rvlHpogDtS --progress--password-file=c:/my1.pas cococ_sync@219.234.85.181::cococmusicfiles cygdrive/e/cococmusicfile/wma_music_file/ting_cococ_com_2005/0/1/9388打开计划任务服务,执行上面内容的批处理不管什么平台,只要相应的按以上方法设置完就能完成同步工作。本文出自 “娜一片天空” 博客,请务必保留此出处http://wanwentao.blog.51cto.com/2406488/579008... 全文

LINUX rsync 配置与详解 休闲 职场

redhat linux rsync配置

rsync工具简介    rysnc是一个数据镜像及备份工具,具有可使本地和远程两台主机的文件,目录之间,快速同步镜像,远程数据备份等功能。在同步过程中,rsync是根据自己独特的算法,只同步有变化的文件,甚至在一个文件里只同步有变化的部分,所以可以实现快速的同步数据的功能。   下面所讲的简单的rsync同步方法,依赖于SSH服务。一般rsync,ssh软件包都会默认安装的。检查方法:rpm -qa|grep -i rsync注意:在实行备份方案前请用其他目录进行测试以防错误,切记!! [root@mailsvr ~]# rsync -aSvH /home/ root@192.168.1.2:/home/  提示输入192.168.1.2机器的root用户密码,输入即可开始同步。 参数解释: a 等同于 -rlptgoD 归档模式,就是保持文件所有属性、权限不变 S 有效的处理零散文件 v verbose模式 H 保持hard links 上面这个表示 将本机的/home/目录下所有的文件,同步到192.168.1.2机器的/home/目录下。。上面红色标记是源文件位置 蓝色标记是目的位置如果想每次同步之后,两边的文件保持一致,需要添加参数--delete,添加这个参数时,一定要注意测试,否则会造成严重后果,删除了数据。 [root@mailsvr ~]# rsync -aSvH --delete /home/ root@192.168.1.2:/home/  [root@mailsvr ~]# rsync -aSvH root@192.168.1.2:/home/ /home/ 上面这条表示,将远程机器192.168.1.2机器上的/home/目录下所有的文件,同步到本地的/home/目录下,同步的时候注意源和目的,前面的是源文件位置,后面的目的文件位置 上面的命令,执行的时候,需要输入192.168.1.2机器的root用户密码,这样很烦,可以两台机器做个ssh信任,省去每次输入密码,在添加crontab自动执行。自动同步数据。 下面是2台主机建立ssh信任 A机器 192.168.1.1 B机器 192.168.1.2 [root@mailsvr ~]# ssh-keygen -t rsa      创建证书 Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: 65:4a:68:cc:6c:23:2b:04:1a:3c:ee:d7:af:e7:e3:8d root@mailsvr[root@mailsvr ~]# 然后把公匙传到B机的/root/.ssh中: [root@mailsvr .ssh]# scp /root/.ssh/id_rsa.pub root@192.168.1.2:/root/.ssh/authorized_keys root@192.168.1.2's password: id_rsa.pub                            100%  219     0.2KB/s   00:00 [root@mailsvr .ssh]# 验证一下,ssh登陆到B机,是否不需要输入密码,如果不用则建立成功 [root@mailsvr .ssh]# ssh 192.168.1.2 Last login: Fri Jun  6 09:59:28 2008 from 192.168.1.1 [root@mailsvr ~]# 下面是rsync的另一种方法,服务器端和客户端使用。 两台机器都需要安装软件包,这里不罗嗦了。 服务器端配置:  rysnc一般是通过xinetd进行启动管理的。 修改/etc/xinetd.d/rsync,只修改一个地方 # default: off # description: The rsync server is a good addition to am ftp server, as it \ #       allows crc checksumming etc. service rsync {         disable = yes  修改为disable = no        socket_type     = stream         wait            = no         user            = root         server          = /usr/bin/rsync         server_args     = --daemon         log_on_failure  += USERID 接下来编辑配置文件 [root@mailsvr ~] # cat /etc/rsyncd.conf  该文件需要新创建 uid = root           #root用户访问 gid = root           #root组用户访问 use chroot = no      #不能使用chroot max connections = 9  #最大连接数 list = yes           #允许列出文件清单 pid file = /var/run/rsyncd.pid lock file = /var/run/rsync.lock log file = /var/log/rsyncd.log hosts allow  = 192.168.1.2      #只允许这个主机访问 [data]                     #发布项 path = /home/data/         #发布的路径 ignore errors read only = yes            #只读 auth users = root                #认证用户为root secrets file = /etc/sery.pass    #密码文件 ------------------------------------------------------------------------------ 下面是密码文件 [root@mailsvr ~] # cat /etc/sery.pass root:123456 注意权限为600 服务器端配置完成,客户端只需要安装rsync包即可 接下来创建密码文件 [root@mailsvr ~] # cat /etc/sery.pass 123456        #这里只需要输入服务器端密码文件中定义的密码即可。 注意权限为600  使用命令开始同步 [root@mailsvr ~] #  rsync -aSvH --password-file=/etc/sery.pass root@192.168.1.2::data /home/ 解释:--password-file=/etc/sery.pass  这段是密码文件,如果不加这段,需要手动输入服务器端定义好的密码。  root@192.168.1.2::data     这里的:data是服务器端的发布项。   如果文件比较大,可以使用nohup将进城放在后台执行,   [root@mailsvr ~] #  nohup rsync -aSvH --password-file=/etc/sery.pass root@192.168.1.2::data /home/ >rsync.log &   上面的表示将远程机器192.168.1.2机器上发布的data目录,同步到本地机器的/home/目录下。 本文出自 “在晴朗的天空下” 博客,请务必保留此出处http://chenzhuo.blog.51cto.com/150592/269530... 全文

linux redhat rhel 休闲 rsync

Linux下配置rsync同步备份数据

Linux下配置rsync同步备份数据好久前安装的了,呵呵,好久不用了~~~现在整理出来,如果有不对的地方,望高手指正哈~~~电脑里东西太多了,有时间再好好验证一下:)安装rsync服务端# tar zxvf rsync-3.0.4.tar.gz -C /opt/# cd /opt/rsync-3.0.4/# ./configure# make# make install启动服务# /usr/local/bin/rsync --daemon自动启动设定... 全文

linux rsync 休闲 职场

linux下配置rsync服务器和实时同步

安装:rpm –ivh rsync-XXXXXX.RPM  也可以用YUM启动rsync必须要装xinetd,它是靠它启动的,端口是873设定: /etc/xinetd.d/rsync:即#vi /etc/xinetd.d/rsync #default: off #de.ion:The rsync server is a good addition to am ftp server,as it #    allows crc checksumming etc. service rsync {     disable = no  把它改为no     socket_type   = stream     wait      = no     user      = root     server     = /usr/bin/rsync     server_args   = --daemon     log_on_failure += USERID }配置文件解释:uid=nobody   gid=nobody运行rsync用户和组max connections=4最大连接数use chroot=nolog file=/var/log/rsyncd.logpid file=/var/run/rsyncd.pidlock file=/var/run/rsyncd.lock#auth users=rootsecrets file=/etc/rsyncd.secrets必须要定义这个文件,里面定义第一个模块的用户名和密码,格式:test:password,权限必须是600 [test]   模块名path=/test  这个目录必须nobody可读写模块所定义的路径comment = test备注ignore errorsread .ly = yes如果出现模块只能读的错误,就把这里改成NOlist = noauth users = test定义同步用户secrets file = /etc/swd/www.pass定义用户和密码,权限必须是600 ... 全文

linux 服务器 休闲 职场 rsync

CentOS6中rsync服务器的安装与配置

一、rsync 简介  Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件,也可以使用 Rsync 同步本地硬盘中的不同目录。... 全文

linux rsync

rsync 安装配置

对系统管理员来说,平时的工作重心应该集中在维护系统正常运转,能够正常提供服务上,这里往往牵涉到一个数据备份的问题,在我所了解 的情况中,有80%的系统管理员不是太关心自己服务器的安全性,但往往对备分镜像的技术相当感兴趣,但由于商业产品的软硬件价格都相当高 昂,因此往往会选择自由软件。这里准备介绍的rsync就是这样的软件,它可以满足绝大多数要求不是特别高的备份需求。 一、特性简介 rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync。它的特性如下: 1、可以镜像保存整个目录树和文件系统。 2、可以很容易做到保持原来文件的权限、时间、软硬链接等等。 3、无须特殊权限即可安装。 4、优化的流程,文件传输效率高。 5、可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接。 6、支持匿名传输。  1.       首先确保系统已安装rsyncdpkg –l rsync 如果没有安装apt-get install rsync 2.       建立rsyncd.conf配置文件log file=/var/log/rsyncd.loglock file=/var/run/rsyncd.lockmotd file = /var/run/rsyncd.motd list = yesuid = rootgid = rootuse chroot = yesmax connections = 5syslog facility = local5hosts allow=IPhosts deny=*  [site]#需要做镜像的目录path = /var/www/#注释comment = Backup Client Of site data#默认为0,意no timeout,建议为600(10分钟)timeout = 600#只读read only = yes#允许客户端进行列出操作list = yes#记录下传输记录transfer logging = yes#日志格式log format = %a-%o-%a-%m-%u-%f-%l#认证的用户名,如果没有这行,则表明是匿名auth users = xiao#认证文件名,权限为(600)secrets file = /etc/rsyncd.passwd  3.       建立rsyncd.passwd文件User:passwd如 xiao(用户名):xiao(密码) 客户端配置1.       在/etc下建立rsyncd.psswd里面只写密码xiao(密码) 说明:1)拷贝本地文件。当SRC和DES路径信息都不包含有单个冒号":"分隔符时就启动这种工作模式。如:rsync -a /data /backup  2)使用一个远程shell程序(如rsh、ssh)来实现将本地机器的内容拷贝到远程机器。当DST路径地址包含单个冒号":"分隔符时启动该模式。如:rsync -avz *.c foo:src  3)使用一个远程shell程序(如rsh、ssh)来实现将远程机器的内容拷贝到本地机器。当SRC地址路径包含单个冒号":"分隔符时启动该模式。如:rsync -avz foo:src/bar /data  4)从远程rsync服务器中拷贝文件到本地机。当SRC路径信息包含"::"分隔符时启动该模式。如:rsync -av root@172.16.78.192::www /databack  5)从本地机器拷贝文件到远程rsync服务器中。当DST路径信息包含"::"分隔符时启动该模式。如:rsync -av /databack root@172.16.78.192::www6)列远程机的文件列表。这类似于rsync传输,不过只要在命令中省略掉本地机信息即可。如:rsync -v rsync://172.16.78.192/wwwrsync参数的具体解释如下:-v, --verbose 详细模式输出-q, --quiet 精简输出模式-c, --checksum 打开校验开关,强制对文件传输进行校验-a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD-r, --recursive 对子目录以递归模式处理-R, --relative 使用相对路径信息-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、ssh方式进行数据同步--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 显示帮助信息本文出自 “小小的linux” 博客,转载请与作者联系!... 全文

linux rsync 数据备份 数据同步 休闲

rsync 服务与配置文档

rsync 服务与配置文档1 某项目rsync配置文档(关键字已处理) $ cat /etc/rsyncd.conf#全局配置 log file = /var/log/rsyncd.log         #日志文件 pid file = /var/run/rsyncd.pid         #pid文件 lock file = /var/run/rsync.lock        #支持max connections参数的锁文件 max connections = 100                  #客户端最大连接数为100 use chroot = no                        #不使用chroot !!   uid = dongnan                          #服务器端传输文件时,要发哪个用户和用户组来执行; gid = dongnan                          ###默认是nobody 用户和用户组 ignore errors                          #忽略一些无关的IO错误  list = no                              #不允许列文件 #address = 10.0.100.71                 #监听的ip地址与端口号 #port = 873                           motd file = /etc/rsyncd/rsyncd.motd    #定义服务器信息,用户登录时会看到这个信息  #模块配置 [htdocs]                               #模块名称 path = /data/htdocs/                   #指定目录 comment = htdocs                       #注释 read only = yes                        #只读   auth users = dongnan                   #基于用户认证,如果没有这行则是匿名,多个用户用","分隔  secrets file = /etc/rsyncd.secrets     #保存用户密码,格式如下 cat /etc/rsyncd.secrets                                        ### dongnan:654321  [iso] path = /data/iso/ comment = iso read only = no                         #可写 hosts allow = 10.0.100.0/24            #基于IP地址认证,多个IP地址用空格" "分隔 2 启动 rsync 服务... 全文

休闲 rsync 同步 模块 linux

使用rsync+inotify配置触发式(实时)远程同步

系统环境:CentOS release 6.3  x86_64安装软件:rsync3.xinotify-tools条件:需要实时同步的两台主机: 192.168.1.51 192.168.1.53同步的网站目录: /var/www/html/1、在文件服务器端的配置下载安装inotify-tools: [root@data ~]# cd /usr/src/[root@data src]# wget http://iweb.dl.sourceforge.net/project/inotify-tools/inotify-tools/3.13/inotify-tools-3.13.tar.gz[root@data src]# tar zxvf inotify-tools-3.14.tar.gz[root@data src]# cd inotify-tools-3.14[root@data inotify-tools-3.14]# ./configure --prefix=/usr/local/inotify-tools 检查rsync是否安装 :检查命令: rpm -qa | grep rsync  如果有输出就表示rsync已经安装,不在需要安装,如果没输出则表示没有安装,可以通过源码编译安装或者yum安装,yum 安装的方法 :[root@cqb html]# yum install -y rsync[root@cqb inotify-tools-3.13]# cd /var/www/html/[root@cqb html]# vim rsync.sh     文件服务器安装好rsync后无需配置,也不需要启动。同步脚本如下:#!/bin/bash######################################## system:CentOS 6.x 64bit                    #### Author:wolf                                         #### QQ:1250052800                                         #### E-mail:1250052800@qq.com #### Date:                    21:40 2012-11-28    #### Version: 1.1                                         #### rsync+inotify sync script                ######################################## #define variableshost1=192.168.1.53src=/var/www/htmldst=wwwuser=webuserrsync_passfile=/etc/rsync.passwordinotify_home=/usr/local/inotify-tools/LogFile=/tmp/inotify_sync.log #judgeif [ ! -e "$src" ] \|| [ ! -e "$rsync_passfile" ] \|| [ ! -e "$inotify_home/bin/inotifywait" ] \|| [ ! -e "/usr/bin/rsync" ];then        echo "Check File and Folder"        exit 9fi #sync$inotify_home/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' -e close_write,delete,create,attrib $src \| while read filedo        cd $src && rsync -aruz -R --delete ./ --timeout=100 $user@$host1::$dst --password-file=$rsync_passfile >$LogFile 2>&1done exit 0[root@cqb html]# chmod +x rsync.shecho "/var/www/html/rsync.sh &" /etc/rc.local   将此脚本写入到/etc/rc.local 让系统自动加载即可.脚本相关注解:    -m 是保持一直监听    -r 是递归查看目录    -q 是打印出事件~    -e create,move,delete,modify    监听 创建 移动 删除 写入 事件    rsync -aHqzt $SRC $DST    -a 存档模式    -H 保存硬连接    -q 制止非错误信息    -z 压缩文件数据在传输    -t 维护修改时间    -delete 删除于多余文件当要排出同步某个目录时,为rsync添加--exculde=PATTERN参数,注意,路径是相对路径。详细查看man rsync当要排除都某个目录的事件监控的处理时,为inotifywait添加--exclude或--excludei参数。详细查看man inotifywait另:/usr/local/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format  '%T %w%f' \-e modify,delete,create,attrib \${src} \上面的命令返回的值类似于:10/03/09 15:31 /wwwpic/1这3个返回值做为参数传给read,关于此处,有人是这样写的:inotifywait -mrq -e create,move,delete,modify $SRC | while read D E F;do细化了返回值。说明: 当文件系统发现指定目录下有如上的条件的时候就触发相应的指令,是一种主动告之的而非我用循环比较目录下的文件的异动,该程序在运行时,更改目录内的文件时系统内核会发送一个信号,这个信号会触发运行rsync命令,这时会同步源目录和目标目录。--timefmt:指定输出时的输出格式   --format:  '%T %w%f'指定输出的格式二.关于inotify介绍Inotify 是文件系统事件监控机制,作为 dnotify 的有效替代。dnotify 是较早内核支持的文件监控机制。Inotify 是一种强大的、细粒度的、异步的机制,它满足各种各样的文件监控需要,不仅限于安全和性能。inotify 可以监视的文件系统事件包括:IN_ACCESS,即文件被访问IN_MODIFY,文件被 writeIN_ATTRIB,文件属性被修改,如 chmod、chown、touch 等IN_CLOSE_WRITE,可写文件被 closeIN_CLOSE_NOWRITE,不可写文件被 closeIN_OPEN,文件被 openIN_MOVED_FROM,文件被移走,如 mvIN_MOVED_TO,文件被移来,如 mv、cpIN_CREATE,创建新文件IN_DELETE,文件被删除,如 rmIN_DELETE_SELF,自删除,即一个可执行文件在执行时删除自己IN_MOVE_SELF,自移动,即一个可执行文件在执行时移动自己IN_UNMOUNT,宿主文件系统被 umountIN_CLOSE,文件被关闭,等同于(IN_CLOSE_WRITE | IN_CLOSE_NOWRITE)IN_MOVE,文件被移动,等同于(IN_MOVED_FROM | IN_MOVED_TO)注:上面所说的文件也包括目录。[root@cqb html]# vim /etc/rsync.password  创建密码文件12345    这里只要输入密码就可以[root@cqb html]# chmod 600 /etc/rsync.password   给密码文件权限为属主可读可写(必须的)启动脚本 ./rsync.sh &2、客户端的配置 [root@data ~]# vim /etc/rsyncd.conf     创建rsync住配置文件uid = nobody                         ##全局配置开始,指文件传输时模块进程的uid gid = nobody                         ##同上gid use chroot = no                    ##是否让进程离开工作目录 max connections = 4            ##最大并发数 syslog facility = local5 ##记录日志的facility pid file = /var/run/rsyncd.pid    ##pid位置 [www]                                        ##模块配置开始 path = /var/www/html            ##需要备份的目录,必须指定,                 comment = whole ftp area    ##注释 read only = no                     ##客户端是否只读 write only = no                    ##是否只能写 hosts allow = *                    ##允许同步主机 hosts deny = 192.168.1.0/24 ##禁止访问的主机 list = yes                             ##是否允许列出所有模块 uid = root                                gid = root auth users = webuser             ##可以连接该模块的user secrets file = /etc/rsync.password    ##密码文件在哪,需要自己建立[root@data ~]# rsync --daemon    启动主进程[root@cqb html]# vim /etc/rsync.password    创建密码文件webuser:12345[root@cqb html]# chmod 600 /etc/rsync.password     给密码文件权限为属主可读可写(必须的)3、测试查看是否同步[root@cqb html]# cp /etc/passwd /var/www/html/  本文章大部分内容收集于网上,如有问题请联系,51cto博客个人网站本文出自 “平凡的日子” 博客,请务必保留此出处http://wolfchen.blog.51cto.com/2211749/1085142... 全文

linux文件同步 rsync 实时同步 十全十美

rsync的配置使用

Rsync  默认端口873Wirer:zuoyuezong@gmail.com描述:rsync服务是基于C/S模式的  作用:简单的说就是同步文件用的环境: 两台linux服务器 192.168.152.153(hostname是amoeba) 作为服务器 ;192.168.152.150作为客户端(hostname 是localhost)目的:同步my.cnf配置文件到192.168.152.150服务器操作步骤:... 全文

linux 服务器 源代码 配置文件 localhost

1