rsync同步操作
rsync基本使用
rsync概述
Rrmote Sync,远程同步
-支持本地复制,或与其他SSH、rsync主机同步
-官方网站:http://rsync.samba.org/
rsync同步操作
命令用法: -rsync [选项] 源目录 目标目录
同步与复制的差异: -复制,完全拷贝源到目标 -同步:增量拷贝,只传输变化过的数据
本地同步: -rsync [选项…] 本地目录1 本地目录2
-rsync [选项…] 本地目录1/ 本地目录2
例:mkdir /todir --> rsync -a /boot /todir #同步整个文件夹
rsync -a /boot/ /todir/ #只同步目录下的数据
同步控制
rsync操作选项: -n 测试同步过程,不做实际修改
–delete 删除目标文件夹内多余的文档
-a 归档模式,相当于-rlptgoD
-v 显示详细操作信息
-z 传输过程中启用压缩/解压
-r 递归,包括目录/子目录及所以文件
-l 保留符号链接文件
-p、-t 保留文件的权限、时间标记
-o、-g 保留文件的属主/属组标记
-D 保留设备文件及其他特殊文件
rsync+ssh同步
用法及服务端要求:
列出SSH服务端资源 : -rsync user@host:远程目录/
与远程的SSH目标保持同步: - 下行 rsync […] user@host:远程目录 本地;目录
-上行 rsync […] user@host:远程目录
服务端要求: -开启sshd服务,并提供授权的用户、密码
下行示例 ; rsync root@192.168.4.7:/root/ #浏览远程目录
rsync -az root@192.168.4.7:/boot/ /fromssh/ #通过密码验证后执行同步
ls -l /fromssh/ #确认同步结果
上行示例: 将本地的/etc 目录备份到远程主机
rsync -az /etc root@192.168.4.7:/opt/ #通过验证后执行同步
du -sh /opt/etc/ #在服务器上确认结果
inotify实时同步
部署监控环境
同步的实时性
安装固定周期定期同步 : -时间间隔不好固定,同步不及时或资源浪费 -实时性较差
linux内核的inotify机制: -提供事件响应式的文件系统通知机制
-安装inotify-tools控制工具可调用此机制实现监控
安装inotify-tools工具
参考下载地址: - http://download.sf.net/inotify-tools/
-标准的源码、编译安装即可
tar -xf inotify-tools-3.13.tar.gz
cd inotify-tools-3.13
./configure && make && make install
inotifywait监控
基本用法: inotifywait [选项] 目标文件夹
常用命令选项: -m ,持续监控(捕获一个事件后不会退出)
-r , 递归监控、包括子目录及文件
-q , 减少屏幕输出信息
-e ,指定监视的modify、move、create、delete、attrib等事件类别
持续跟踪指定文件夹的变化: -目标文件夹 : /opt
-当文档出现监视的事件时,会立即给出相应提示
inotifywait -mrq -e modify,create,delete /opt …
配置实时同步
inotify与sync的结合
基本思路: -利用while循环来反复检查单次监控结果
while inotifywait 监控操作
do
需要执行的rsync同步操作
done
编写同步脚本
实现从本地到远程的WEB目录推送
-源与目标:/var/www/html
vim /root/isync.sh
#!/bin/bash
FROM_DIR="/var/www/html"
RSYNC_CMD=“rsync -az --delete $FROM_DIR root@192.168.4.207:/var/www/html”
while inotifywait -rqq -e modify,move,create,delete,attrib $FROM_DIR
do
$RSYNC_CMD
done &
chmod +x /root/isync.sh
验证实时同步的效果
部署环境测试: 1.为从svr7 上ssh远程到pc207实现免密码登录
ssh-keygen、ssh-copy-id root@远程机地址
2.为svr7和pc207准备目录/var/www/html
3.运行同步脚本/root/isync.sh
4.修改svr7上/var/www/html 目录下的内容
5.观察pc207上对应目录的实时变化
Cobber装机平台
cobbler概述
cobber简介
基本概念 : Cobber是一款快速的网络系统部署工具, 集中管理所需服务,如DHCP、DNS、TFTP、Web, Cobber内部集成了一个镜像版本仓库,Cobber内部集成了一个ks应答文件仓库,Cobber还提供了包括yum源管理、Web界面管理、API接口、电源管理等功能 ,-DHCP、TFTP、PXE -pxelinux.0、vmlinuz、initrd.img
PXE引导配置: -/TFTP目录/pxelinux.cfg/default -背景图片、多系统支持
kickstart自动应答 : -软件源指定、%POST安装后脚本 ,system-config-kickstart工具
Cobber平台部署
安装Cobber组件
安装软件包 : yum -y install cobber cobber-web dhcp tftp-server pykickstart httpd xinetd
开启所需服务: systemctl start …
配置Cobber
修改配置文件/etc/cobber/setting , 部署cobber相关的包 , 配置DHCP服务 , 导入系统镜像, kickstart文件生成