SERVICE05 - rsync同步操作 inotify实时同步

本文详细介绍了PXE网络装机的整个流程,涉及dhcpd、httpd、yum、tftp等服务的配置,以及在CentOS7中通过rsync和inotify实现文件同步的步骤。通过配置Web镜像同步,利用inotifywait监控文件变化,实现svr7和pc207之间的实时同步。
摘要由CSDN通过智能技术生成

PXE网络装机,综合性比较强
涉及到服务:dhcpd、httpd、yum、tftp
涉及到文件:tftp
 

1. 通过网络方式来实现安装操作系统

HTTP服务端   (为客户机提供软件资源)
需要的结果: http://192.168.4.254/rh7dvd
可能遇到的问题:
1)httpd服务器没启动
2)防火墙及SELinux忘记关闭
3)软件资源(RHEL7镜像文件)没有挂载成功
4)访问地址/目录名称写错

 DHCP服务端  (为客户机分配IP地址、告诉客户机需要去访问的下一个启动服务器在哪里及去找启动服务器索取一个启动文件)
1)装包 dhcp
2)配置

vim  /etc/dhcp/dhcpd.conf

subnet  网络段地址   netmask  子网掩码  {
range  起始IP地址    结束IP地址;
next-server  TFTP启动服务器的IP地址;
filename  ”启动文件的文件名(pxelinux.0)”;
}

 

3)起服务 dhcpd

TFTP启动服务端  (为客户机提供启动文件、装系统用的素材)

 

 

1)装包 tftp-server

2)配置,提供各种素材文件(用来启动客户机、为客户机装系统)

### 网卡启动文件,以及配套的模块文件、背景图片
/var/lib/tftpboot/pxelinux.0
/var/lib/tftpboot/vesamenu.c32
/var/lib/tftpboot/splash.png

### 决定客户机显示界面如何展示
/var/lib/tftpboot/pxelinux.cfg/default

@@@ 这些文件从哪来:
sysliniux 软件包安装的结果文件
# yum  provides  ”*/pxelinux.0” 【查哪个软件包能提供XX文件】
# rpm  -ql  syslinux   【查软件包装了哪些文件】
XX版本光盘目录 isolinux/isolinux.cfg

### XX系统安装引导文件(内核、初始化文件)
/var/lib/tftpboot/rhel7/vmlinuz
/var/lib/tftpboot/rhel7/initrd.img
/var/lib/tftpboot/rhel6/vmlinuz
/var/lib/tftpboot/rhel6/initrd.img
.. .. 
@@@ 这些文件从哪来:
找XX版本系统的光盘目录 isolinux/
 

3)起服务 tftp

[root@svr7 html]# systemctl restart tftp

 

关于客户机的PXE启动菜单的显示

 

1.手动安装 

# vim  /var/lib/tftpboot/pxelinux.cfg/default
63 kernel rhel7/vmlinuz

 

64 append initrd=rhel7/initrd.img  inst.stage2=http://192.168.4.254/rh7dvd

 

2. 无人值守安装   (让网络装机的过程能够自动完成)

# vim  /var/lib/tftpboot/pxelinux.cfg/default
63 kernel rhel7/vmlinuz
64 append initrd=rhel7/initrd.img ks=http://192.168.4.254/ks-rhel7.cfg

准备工作:
1)提前准备一份可用的应答文件 ks-rhel7.cfg  (把这个文件放到HTTP服务端的/var/www/html/目录下)

# system-config-kickstart 
先装system-config-kickstart包
修改 yum源的id,设为 [development]
2)确保从客户机 http://192.168.4.254/ks-rhel7.cfg 能够访问第1步准备的这一份应答文件

 

TFTP+DHCP启动服务器备份与恢复
备份:

 

# tar  -zcPf  /opt/pxeconf.tar.gz  /var/lib/tftpboot/  /etc/dhcp/dhcpd.conf

恢复:

# yum  -y  install  dhcp  tftp-server
# tar  -xPf   /opt/pxeconf.tar.gz
# systemctl  restart  dhcpd  tftp

关于客户机的PXE启动菜单的显示(补充):
# vim  /var/lib/tftpboot/pxelinux.cfg/default
default vesamenu.c32 //支持图形显示
timeout 600 //等待超时60秒
menu background  splash.png   //背景图片
menu title 菜单标题文字
label 启动项1的ID
  menu label 启动项1显示的文字
  kernel 内核文件vmlinuz的相对路径
  append initrd=初始化文件initrd.img的相对路径 .. ..
label centos7
  menu label Install ^CentOS 7.4   //^定义快捷键
  kernel centos7/vmlinuz
  append initrd=centos7/initrd.img .. .. 
label local
  menu label Boot from ^local drive
  menu default
  localboot 0xffff

配置default文件时,可以使用 ^ 来定义快捷键,加载menu  label 后面的显示文件内的某一个字母前面
vim末行模式,删除连续的多行文本 ——
:73,114d

rsync同步

应用场景:
DNS轮询、分离解析,==》
同一个域名www.tedu.cn,有多个IP地址/服务器
rsync 同步操作 (同步主机上的内容,让从机的内容跟主机保持一致)
保持 主机1的目录1    主机2的目录2  的内容要一致

# rsync  目录1   目录2
同步与复制(cp、scp)命令不一样

假设目录1的大小是500M,
执行 cp、scp 复制时,也需要传输500M数据到 目录2

执行 rscyn 同步时,只传输目录2中没有/不一样的数据

假设 目录1 增加/修改了 5M,

 

rsync同步工具的常用选项:

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

本地同步 

rsync [选项…] 本机目录1    本机目录2

rsync+sshd远程同步 

浏览远程目录资源:

# rsync  远程用户@远程主机地址:远程目录/

上传(上行同步):

# rsync [选项…] 本机目录1   远程用户@远程主机地址:远程目录2
下载(下行同步):
# rsync [选项…] 远程用户@远程主机地址:远程目录1  本机目录2

请思考:从远程主机获取一个文件有哪些方式?
U盘、电子邮件、httpd、ftp、nfs、samba、scp、rsync、……

同步的含义 —— 两边数据要完全一样(时间、属性、去除多余文档)
# rsync  -az  –delete  目录1/   目录2

统计目录占用的空间大小
# du  -sh  /etc

inotify+rsync 实时同步

前面的操作是由管理员手动执行rsync同步操作

下面通过计划任务定期执行rsync同步操作(间隔时间)

当目录1的内容变化时,马上执行同步到目录2

需要安装: inotify-tools

inotifywait常用命令选项:

  • -m,持续监控(捕获一个事件后不退出)
  • -r,递归监控、包括子目录及文件
  • -q,减少屏幕输出信息
  • -
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值