Linux rsync同步操作和inotify实时同步 、 Cobbler装机平台 (SERVICE06—-DAY21)[通俗易懂]

Linux rsync同步操作和inotify实时同步 、 Cobbler装机平台 (SERVICE06—-DAY21)[通俗易懂]rsync同步操作•命令用法–rsync[选项…]源目录目标目录•同步与复制的差异–复制:完全拷贝源到目标–同步:增量拷贝,只传输变化过的数据同步控制•rsync操作选项–-n:测试同步过程,不做实际修改––delete:删除目标文件夹内多余的文档–-a:归档模式,相当于-rlptgoD–-v:显示详细操作信息–-z:传输过程中启用压缩/解…

大家好,又见面了,我是你们的朋友全栈君。

rsync同步操作

• 命令用法
– rsync [选项…] 源目录 目标目录

• 同步与复制的差异
– 复制:完全拷贝源到目标
– 同步:增量拷贝,只传输变化过的数据

同步控制
• rsync操作选项
– -n:测试同步过程,不做实际修改
– –delete:删除目标文件夹内多余的文档
– -a:归档模式,相当于-rlptgoD
– -v:显示详细操作信息
– -z:传输过程中启用压缩/解压

本地同步:
[root@svr7 ~]# mkdir /nsd01 /todir
[root@svr7 ~]# cp /etc/passwd /etc/shadow /nsd01
[root@svr7 ~]# ls /nsd01

[root@svr7 ~]# rsync -av /nsd01 /todir/ #同步目录本身
[root@svr7 ~]# ls /todir

[root@svr7 ~]# rsync -av /nsd01/ /todir/ #同步目录内容
[root@svr7 ~]# ls /todir
[root@svr7 ~]# rsync -av –delete /nsd01/ /todir/
[root@svr7 ~]# ls /todir
[root@svr7 ~]# touch /nsd01/1.txt
[root@svr7 ~]# rsync -av –delete /nsd01/ /todir/
[root@svr7 ~]# ls /todir

####################################################
rsync+SSH同步:远程同步

用法及服务端要求
• 列出 SSH 服务端资源
– rsync user@host :远程 目录/
• 与远程的 SSH目录保持同步
– 下行:rsync […] user@host:远程目录 本地目录
– 上行:rsync […] 本地目录 user@host:远程目录
虚拟机A:
]# rsync -av –delete /todir/ root@192.168.4.207:/opt/
虚拟机B:
]# ls /opt

虚拟机A:
]# touch /todir/3.txt
]# rsync -av –delete /todir/ root@192.168.4.207:/opt/
虚拟机B:
]# ls /opt

虚拟机A:
]# touch /todir/4.txt
]# rsync -av –delete /todir/ root@192.168.4.207:/opt/
虚拟机B:
]# ls /opt
###################################################
实时同步
一 生成公钥与私钥,ssh取消密码验证
虚拟机A:
1.生成公钥与私钥
[root@svr7 ~]# ssh-keygen #一路回车
[root@svr7 ~]# ls /root/.ssh/
id_rsa(私钥) id_rsa.pub(公钥)
known_hosts(记录曾经远程管理过的机器)

2.将公钥传递给对方
[root@svr7 ~]# ssh-copy-id root@192.168.4.207

虚拟机B:
[root@pc207 ~]# ls /root/.ssh/
authorized_keys(别的机器传递过来的公钥)

虚拟机A:测试无密码验证
]# rsync -av –delete /todir/ root@192.168.4.207:/opt/

####################################################
二 安装inotify-tools工具软件,监控目录内容变化

1.具备inotify-tools工具软件
真机上传数据到虚拟机A
]$ ls /linux-soft/
]$ ls /linux-soft/01
]$ scp /linux-soft/01/tools.tar.gz root@192.168.4.7:/tmp/

2.虚拟机A查看是否上传成功
]# ls /tmp
]# tar -xf /tmp/tools.tar.gz -C /
]# ls /
]# ls /tools/

3.tar解包
]# ls /tools
]# tar -xf /tools/inotify-tools-3.13.tar.gz -C /usr/local/

]# ls /usr/local/

步骤1:安装开发工具
[root@svr7 ~]# yum -y install make gcc

步骤2: ./configure 配置,指定安装目录/功能模块等选项
]# cd /usr/local/inotify-tools-3.13/
]# ./configure

步骤3: make 编译,生成可执行的二进制程序文件
]# make

步骤4: make install 安装,将编译好的文件复制到安装目录
]# make install
]# ls /usr/local/bin/inotifywait #验证是否有该程序

inotifywait监控
• 基本用法
– inotifywait [选项] 目标文件夹
• 常用命令选项
– -m,持续监控(捕获一个事件后不退出)
– -r,递归监控、包括子目录及文件
– -q,减少屏幕输出信息
– -e,指定监视的 modify、move、create、delete、
attrib 等事件类别

三 书写一个shell脚本
循环解决重复性的操作
for 循环:适合书写有次数的循环
for i in 值列表
do
重复执行的代码
done

while 循环: 适合书写不限次数的循环
           while  [条件]
           do
                        重复执行的代码
           done

[root@svr7 /]# vim /root/rsync.sh
#!/bin/bash
while inotifywait -rq /todir/
do
rsync -av –delete /todir/ root@192.168.4.207:/opt/
done

[root@svr7 /]# chmod +x /root/rsync.sh
[root@svr7 /]# /root/rsync.sh & #放入后台运行

[root@svr7 /]# jobs -l #查看后台运行的进程
[root@svr7 /]# kill 7833 #杀死脚本程序
[1]+ 已终止 /root/rsync.sh
[root@svr7 /]# jobs -l
###################################################
DNS服务器的主从结构,备份主服务器的数据,解决单点故障

三台虚拟机
1.虚拟机A:主DNS服务器 192.168.4.7
2.虚拟机B:从DNS服务器 192.168.4.207
3.虚拟机C:客户端测试 192.168.4.10
###################################################
虚拟机A:构建主DNS服务器
1.安装软件包
[root@svr7 ~]# yum -y install bind bind-chroot
2.修改配置文件
[root@svr7 ~]# cp /etc/named.conf /etc/named.bak
[root@svr7 ~]# vim /etc/named.conf
options {

directory “/var/named”;
};
zone “tedu.cn” IN {

type master;
file “tedu.cn.zone”;
};
3.建立地址库文件
[root@svr7 ~]# cd /var/named/
[root@svr7 named]# cp -p named.localhost tedu.cn.zone
[root@svr7 named]# vim tedu.cn.zone
tedu.cn. NS svr7
svr7 A 192.168.4.7
www A 1.2.3.4
[root@svr7 named]# systemctl restart named
[root@svr7 ~]# nslookup www.tedu.cn 192.168.4.7

4.修改主配置文件,指定从服务器IP地址
[root@svr7 /]# vim /etc/named.conf
options {

directory “/var/named”;
allow-transfer { 192.168.4.207; }; #指定从服务器
};
zone “tedu.cn” IN {

type master;
file “tedu.cn.zone”;
};

5.修改地址库文件,进行声明从服务器
[root@svr7 /]# vim /var/named/tedu.cn.zone
tedu.cn. NS svr7
tedu.cn. NS pc207 #声明从服务器
svr7 A 192.168.4.7
pc207 A 192.168.4.207
www A 1.2.3.4

[root@svr7 /]# systemctl restart named

##################################################
虚拟机B:从DNS服务器
1.安装软件包
[root@pc207 ~]# yum -y install bind bind-chroot
2.修改主配置文件
[root@pc207 ~]# vim /etc/named.conf
options {

directory “/var/named”;
};
zone “tedu.cn” IN {

type slave;
file “/var/named/slaves/tedu.cn.slave”;
#原则named用户,对该目录具备写入权限
masters { 192.168.4.7; }; #指定主DNS服务器位置
};

[root@pc207 ~]# systemctl restart named
[root@pc207 ~]# ls /var/named/slaves/
tedu.cn.slave
[root@pc207 ~]# nslookup www.tedu.cn 192.168.4.207

虚拟机C:测试
]# echo nameserver 192.168.4.7 > /etc/resolv.conf
]# echo nameserver 192.168.4.207 >> /etc/resolv.conf

]# cat /etc/resolv.conf
nameserver 192.168.4.7
nameserver 192.168.4.207

]# nslookup www.tedu.cn

###################################################
主从DNS服务器同步数据

1.修改数据必定是在主DNS服务器上完成
2.必须修改数据版本号,必须往大的方向修改

地址库文件内容:
2019122401 ; serial #数据版本号由10个数字组成
1D ; refresh #每隔1天,主从会进行同步数据
1H ; retry #重试时间间隔,每隔1个小时
1W ; expire #失效时间,1个星期
3H ) ; minimum #无效记录的缓存时间,3个小时

##################################################

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/161300.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • make wildcard_其在古文中的用法

    make wildcard_其在古文中的用法
    在Makefile规则中,通配符会被自动展开。但在变量的定义和函数引用时,通配符将失效。这种情况下如果需要通配符有效,就需要使用函数“wildcard”,它的用法是:$(wildcardPATTERN…)。在Makefile中,它被展开为已经存在的、使用空格分开的、匹配此模式的所有文件列表。如果不存在任何符合此模式的文件,函数会忽略模式字符并返回空。需要注意的是:这种情况下规则中通配符的展开和上一小节匹配通配符的区别。
    一般我们可以使用“$(wildcard*.c)”来获取工作

    2022年10月21日
  • UML图绘制—–时序图的画法

    UML图绘制—–时序图的画法UML图绘制—–时序图的画法1.什么是时序图时序图用于描述对象之间的传递消息的时间顺序,即用例中的行为顺序主要用来更直观的表现各个对象交互的时间顺序,将体现的重点放在以时间为参照,各个对象发送、接收消息,处理消息,返回消息的时间流程顺序,也称为时序图。又名序列图、循序图、顺序图,是一种UML交互图2.时序图的作用:确认和丰富一个使用情境的逻辑。3.时序图…

  • hibernate二级缓存(一)一级缓存与二级缓存

    hibernate二级缓存(一)一级缓存与二级缓存hibernate二级缓存(一)一级缓存与二级缓存1.hibernate一级缓存hibernate的一级缓存是session级别的缓存,一级缓存hibernate默认启用且不能被卸载,一个事务内有效。特点:使用一级缓存的目的是为了减少对数据库的访问次数,从而提升hibernate的执行效率;(当执行一次查询操作的时候,执行第二次查询操作,先检查缓存中是否有数据,如果有数据就不查询数据库…

  • 典型的电容有_电容的容量

    典型的电容有_电容的容量【硬见小百科】二十种电容分类详解!一、瓷介电容器(CC)【硬见小百科】二十种电容分类详解!1.结构用陶瓷材料作介质,在陶瓷表面涂覆一层金属(银)薄膜,再经高温烧结后作为电极而成。瓷介电容器又分1类电介质(NPO、CCG);2类电介质(X7R、2X1)和3类电介质(Y5V、2F4)瓷介电容器。2.特点1类瓷介电容器具有温度系数小、稳定性高、损耗低、耐压高等优点。最大容量不超过1…

  • 什么是一级市场二级市场三级市场四级市场_一级市场和二级市场的区别和联系

    什么是一级市场二级市场三级市场四级市场_一级市场和二级市场的区别和联系大家都经常听说一级市场与二级市场,相信也有很多人对其概念都有点模糊。而小编认为,早点理清这些概念在金融日益发达的今天是非常重要的,因此,今天就与大家简单认识一下。举个栗子隔壁老王开了个公司,没上

  • 数据挖掘算法和实际应用案例

    数据挖掘算法和实际应用案例第一次写博客,这次主要引用Little_Rookie大佬的一篇博客,主要来说明一下数据挖掘的主要算法和分类,以及实际生活中的应用案例,同时也是为了方便自己以后的学习。如何分辨出垃圾邮件”、“如何判断一笔交易是否属于欺诈”、“如何判断红酒的品质和档次”、“扫描王是如何做到文字识别的”、“如何判断佚名的著作是否出自某位名家之手”、“如何判断一个细胞是否属于肿瘤细胞”等等,这些问题似乎都很专业,都…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号