自同步如果服务器删掉文件,Linux之rsync简单应用&&rsync+inotify实时应用

本文系统Centos6.0

Server:(Centos)  192.168.182.130

Client:(lv2)     192.168.182.129

rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了――remote sync。

它的特性如下:

可以 镜像保存整个目录树和文件系统。

可以很容易做到保持原来文件的权限、时间、软硬链接等等。

无须特殊权限即可安装。

快速:第一次同步时 rsync 会复制全部内容,但在下一次只传输修改过的文件。rsync 在传输数据的过程中可以实行压缩及 解压缩操作,因此可以使用更少的带宽。

安全:可以使用scp、ssh等方式来传输文件,当然也可以通过直接的socket连接。

支持匿名传输,以方便进行网站镜象。

服务器端启动

usr/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf

可能需要 root权限运行.

/etc/rsyncd/rsyncd.conf 是你刚才编辑的rsyncd.conf的位置.

也可以在/etc/rc.d/rc.local里加入让系统自动启动等.

客户端同步

rsync -参数 用户名@同步服务器的IP::rsyncd.conf中那个方括号里(模块名)的内容 本地存放路径 如:

rsync �Cvzrtopg �Cdelete --progress --exclude “*.log”  lansgg@192.168.182.130::lansggtest /root/backup --password-file=/etc/rsyncd.pass

该命令的解释如下:

-v即--verbose   显示传输的详细信息

-z 即--compress 传输时对文件进行压缩

-r 即―recursive 对子目录进行递归处理

-t 即―times    保持文件的时间信息

-o即―owner  用来保持文件的属主信息

-p 即 --perms 保持文件权限

-g 即 �Cgroup 保持文件属组信息

-a 即 --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD

--delete  以rsync服务器为基准保持数据同步,如果服务器删除了某一文件,客户端也会删掉。

--progress 显示出详细的进度情况。

--exclude 用于排除不需要的文件类型。

http://www.01chengde.cn 指定备份的服务器和相关的模块, lansgg 为服务器Server上面设置的rsync同步帐号;

/backup 指定备份的文件在客户端上的存放位置 。

--password-file=/etc/rsyncd.pass 指定客户端存放密码文件的位置。

rsync简单应用;

224936526.jpg

1、Server端安装rsync;

225921156.jpg

创建同步测试目录并且创建同步用户;

修改密码文件权限

呜呼,当你rpm -ql该包的时候,你会发现没有什么配置文件,下面就是自己写配置文件了;

启动rsync

232522588.jpg

在测试目录中创建测试文件

232745966.jpg

2、Client操作;

安装rsync

配置密码文件,里面写入与服务器Server上相同的密码,但不需要再写帐号名。

mkdir /root/backup   #此为创建本地备份目录

开始同步;

001123934.jpg

没有log日志文件;

Ps:你可以将rsync --daemon写入rc.local文件,

你可以将上面的命令写入cron;实现定时同步;

下面是rsync+inotify实现数据实时同步;

上面已经表明,rsync无法实现实时的同步;所以才做了cron;这也是rsync的不足;

Inotify 是一个 Linux特性,它监控文件系统操作,比如读取、写入和创建。Inotify 反应灵敏,用法非常简单,并且比 cron 任务的繁忙轮询高效得多。Inotify 是一个 Linux 内核特性,它监控文件系统,并且及时向专门的应用程序发出相关的事件警告,比如删除、读、写和卸载操作等。您还可以跟踪活动的源头和目标等细节。

要使用 inotify,必须具备一台带有 2.6.13 或更新内核的 Linux 机器(以前的 Linux 内核版本使用更低级的文件监控器 dnotify)。如果不知道内核的版本,请转到 shell,输入 uname -a:

103831503.jpg

这就是常说的rsync可以下发多台机器配置文件的图;其实和上面的案例是反过来,上面是client下载server端,进行备份,这个案例是client端进行上传到多台server端,比如集群的话;

在Server端(三台)配置如上;

下面是接着在Client端安装inotify-tools

inotifywait用于等待文件或文件集上的一个特定事件,可以监控任何文件和目录设置,并且可以递归地监控整个目录树;

inotifywatch用于收集被监控的文件系统统计数据,包括每个inotify事件发生多少次等信息。

编写实时检测同步脚本;

inotifywait的相关参数:

-m 即 �Cmonitor ,表示始终保持事件监听状态;

-r  即 �Crecursive,表示递归查询目录

-q 即 �Cquiet ,打印出监控事件

--timefmt,指定时间的输出格式

--format,指定变化文件的详细信息

sh inotify.sh &

echo “sh inotify.sh &” >> /etc/rc.local

现在可以在client;创建、删除文件进行测试;

Client执行:

当你在Client执行mkdir /root/backup/testtesttest (创建测试目录)

你会发现Client客户端日志:

233804703.jpg

你去查看server端;

233826865.jpg

233826163.jpg

全部已经同步了;

Ps:在执行search inotify的时候,发现一款incron;系统简介:incron.i686 : Inotify cron system;大家可以去研究下;

UltraEdit是一款功能强大的文本编辑和阅读工具。它具有许多优点,例如可以打开、阅读和编辑二进制文件的能力。在Windows10操作系统上安装UltraEdit64的过程如下所示: 1. 首先,从官方网站下载UltraEdit安装文件。根据你的计算机是32位还是64位选择对应的安装文件。 2. 下载完成后,找到UltraEdit安装文件,右键点击并以管理员身份运行。 3. 在安装向导中,选择安装路径。你可以选择默认的安装路径,或者自定义一个你喜欢的路径。 4. 在选择安装完成之前,会让你选择是否安装UltraCompare软件。UltraCompare是一款文件内容比较工具,可以比较多种文件类型的两个或多个文件之间的差异性。根据个人需求,你可以选择是否安装。 5. 等待安装完成。一旦安装完成,你就可以开始使用UltraEdit来进行文本编辑和阅读了。 总结起来,下载并安装UltraEdit是一个很简单的过程。你只需要从官方网站下载安装文件,然后按照安装向导的指引进行安装就可以了。安装完成后,你就可以享受UltraEdit强大的文本编辑和阅读功能了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [《软件安装与使用教程》— UltraEdit在Windows操作系统安装步骤教程](https://blog.youkuaiyun.com/meenr/article/details/124222960)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值