本文系统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简单应用;

1、Server端安装rsync;

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

修改密码文件权限

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

启动rsync

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

2、Client操作;

安装rsync

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

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

开始同步;

没有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:

这就是常说的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客户端日志:

你去查看server端;

全部已经同步了;

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

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

  1. 饥荒联机版把服务器删掉了怎么找回,饥荒联机版存档丢失怎么办 饥荒存档教程...

    导 读 饥荒联机版存档丢失怎么办?今天小编就为大家带来饥荒联机版服务器证书不存在处理方法,让我们来一起看看吧! 1.存档变更 首先,存档并未丢失,而是你的游戏存档位置发生了改变,主要发生在WIN10用 ...

  2. TF卡里删掉文件后内存没变大_为何手机存储空间还没用就快满了?删掉这些隐藏冗余文件满血复活...

    大家好,我是吐槽猫.事情是这样的,我的手机是去年9月份买的,配置是6+64GB,用了还不到一年,存储空间占用率就一直处在85%~90%居高不下.无奈之下删除手机里的大部分音频和视频.卸载了所有不常用A ...

  3. liunx服务器间拷贝文件,linux 不同服务器之间拷贝文件

    linux 不同服务器之间拷贝文件 内容精选 换一换 表1列出了弹性文件服务的常用功能.在使用弹性文件服务之前,建议您先通过常用概念介绍了解NFS.CIFS等基本概念,以便更好地理解弹性文件服务提供的 ...

  4. TF卡里删掉文件后内存没变大_不用第三方,手机自带软件也能清扫内存!教你4个清理技巧...

    手机使用一两年后,难免会堆积了很多文件占用手机内存,今天花部长就来给大家发干货,教你如何正确地清理内存和缓存,让手机运行恢复流畅. 1.手机管家,一键清理 大家应该都知道,清理内存最直接的方法就是打开 ...

  5. TF卡里删掉文件后内存没变大_不用第三方,手机自带软件也能清扫内存!教你4个正确清理技巧...

    手机使用一两年后,难免会堆积了很多文件占用手机内存,今天花部长就来给大家发干货,教你如何正确地清理内存和缓存,让手机运行恢复流畅. 1.手机管家,一键清理 大家应该都知道,清理内存最直接的方法就是打开 ...

  6. linux删掉文件怎么恢复,linux系统误删除文件怎么恢复

    方案1)现在我向大家介绍使用extundelete恢复文件(适合rhel6.X系统的ext4) 安装:下载 extundelete-0.2.4.tar.bz2  wget  http://netass ...

  7. 服务器内提取文件,linux命令如何提取文件夹内特定文件路径

    linux命令如何提取文件夹内特定文件路径 发布时间:2020-07-20 16:35:25 来源:亿速云 阅读:102 作者:小猪 栏目:服务器 这篇文章主要为大家展示了linux命令如何提取文件夹 ...

  8. linux日志服务器配置在哪个文件,Linux中日志的基本配置(syslog)

    Syslog日志的作用: syslog 日志可以帮我们主动的收集到设备的各种信息,并保存在syslog服务器上,当某些设备出现故障的时候,我们可以省去手动收集信息的麻烦,方便快捷的从syslog服务器 ...

  9. TF卡里删掉文件后内存没变大_双11,TF卡,SD卡,读卡器如何选,看这篇就够了...

    此文章发布已经半年有余,各大厂家推出了很多新的SD卡,且SD卡组织也推出了新的标准,所以这篇文章的内容已经有些过时,还得烦请各位移步到新的文章: 黄昏百分百:TF卡,SD卡,读卡器,USB拓展坞如何选 ...

最新文章

  1. IEEE发布2022年科技趋势全球调研:人工智能和机器学习、云计算及5G将成为下一年最重要的技术...
  2. 排好序的数组中,找出两数之和为m的所有组合
  3. CLR via C# 读书笔记 1-2 创建线程的成本
  4. 三数之和为0(c语言实现)(改进)
  5. SAP ABAP 打印(smartforms方式)
  6. 如果微软开发了 Android,会有何不同?
  7. C 杂谈之 Apache的模块开发 (一)
  8. java优化 pdf_Java性能优化权威指南 PDF扫描[132MB]
  9. java毕向东学习笔记——day09
  10. python运动目标绘制轨迹_Python|运动目标检测
  11. 牛客 Algorithm Choosing Mushrooms
  12. 使用 Sprinkles 构建您自己的类型安全版本的 Tailwind CSS
  13. windows apache2.4 基于主机名的虚拟主机配置
  14. SQL如何修改表中的结构
  15. 常见的一些威胁情报分析平台
  16. 程序一点点地写,日子一天天地过。
  17. 图片验证码识别-自动登录工具开发
  18. 【死磕JVM】什么是JVM调优?
  19. t420i升级固态硬盘提升_小体积、大性能、台式机笔记本升级可选,酷兽M.2 SSD固态硬盘测评...
  20. 工程伦理--15.1 基因编辑的伦理问题(上)

热门文章

  1. IC领域常见职位简称AE、FAE、PE、SE、VE、ME、TE、PTE
  2. php 小程序轮播图,微信小程序swiper组件构建轮播图代码分享
  3. php辦厒羲楷遺殤,GBK 编码
  4. linux两个内核切换,用kexec迅速切换内核 | LinuxSir.Org
  5. 开源一款微信小程序云开发实例《爱豆UP榜》
  6. 华丽成长为IT高富帅、IT白富美(六)
  7. 8位单片机(51 STC8)C语言处理32位unsigned long型数据之计算出错
  8. k8s 部署ngnix,出现警告:nginx: [warn] conflicting server name “localhost“ on 0.0.0.0:80, ignored
  9. vue中使用定时器setInterval
  10. k8s 自定义dns_kubernetes 容器 DNS 设置