从小白到大神之路之学习运维第31天

编程入门 行业动态 更新时间:2024-10-25 14:21:51

从小白到大神<a href=https://www.elefans.com/category/jswz/34/1770107.html style=之路之学习运维第31天"/>

从小白到大神之路之学习运维第31天

第二阶段基础

时  间:2023年5月29日

参加人:全班人员

内  容:

Rsync服务

目录

一、基本信息

二、rsync命令

三、rsync+inotfy实时同步


一、基本信息

(一)概述

rsync是linux 下一个远程数据同步工具

他可通过LAN/WAN快速同步多台主机间的文件和目录,并适当利用rsync 算法减少数据的传输

会对比两个文件的不同部分,传输差异部分,因此传输速度相当快

rsync可拷贝、显示目录属性,以及拷贝文件,并选择性的压缩及递归拷贝

(二)特性

1、快速:

第一次传输全部,下一次传输差异

rsync在传输过程中可以实行压缩和解压缩,使用更少的带宽

2、安全:

可以使用scp、ssh等方式传输

直接通过socket连接

支持匿名传输、方便进行网站镜像

(三)应用场景

增量同步

备份迁移

(四)rsync传输模式

本地传输:本地同步数据,类似于cp

远程传输:远程同步数据,类似于scp

守护进程:通过模块化的方式实现批量传输

(五)rsync应用

1、安装    yum -y install rsync

2、监听端口号    TCP/873

二、rsync命令

(一)rsync命令

格式:rsync [选项] 原始位置 目标位置

(二)作为远程命令:

拉取

rsync [OPTION...] [USER@]HOST:SRC... [DEST]

推送

rsync [OPTION...] SRC... [USER@]HOST:DEST

(三)作为rsync服务:

拉取

rsync [OPTION...] [USER@]HOST::SRC... [DEST]

rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]

推送

rsync [OPTION...] SRC... [USER@]HOST::DEST

rsync [OPTION...] SRC... rsync:

//[USER@]HOST[:PORT]/DEST

选项:

-a  归档模式,递归并保留对象属性,等同于-rlptgoD

-v    -verbose        显示同步过程的详细信息

-z    在传输文件时进行压缩

举例:

本地:

rsync  -avz  abc/  /opt

rsync  -avz  /abc  /opt

远程:

rsync -avz root@192.168.2.7:/etc/hostname  /root/

rsync-avz  /root/hostname   root@192.168.2.7: /etc/hostname

(四)配置文件:

/etc/rsyncd.conf

全局配置

模块配置:

三、rsync+inotfy实时同步

(一)服务器端

1、安装网站服务,启动,但是不写首页文件

yum -y install httpd 

systemctl start httpd

2、修改主配置文件  (/etc/rsyncd.conf)

uid = root

gid = root

[wwwroot]

  path = /var/www

  comment = backup export area

  read only = false

  hosts allow = 192.168.1.0/24

(二)客户端

1、开发客户端

安装inotify工具

 inotify-tools

 tar xf  inotify-tools-3.14.tar.gz

 ./configure && make && make install

2、配置内核参数

vim /etc/sysctl.conf

fs.inotify.max_user_instances = 1024

fs.inotify.max_queued_events = 16384

fs.inotify.max_user_watches=1048576

sysctl -P

 inotifywait -mrq -e modify,create,move,delete /var/www/html

3、编写脚本

vim /opt/inotify_rsync.sh

#!/bin/bash

INOTIFY_CMD="inotifywait -mrq -e  modify,create,attrib,move,delete /var/www/html"

RSYNC_CMD="rsync-azH--delete  /var/www/html  192.168.115.130::wwwroot"

$INOTIFY_CMD | while read DIRECTORY EVENT FILE

do

$RSYNC_CMD

done

4、赋予执行权限

chmod +x inotify_rsync.sh

5、写入文件

vim /etc/rc.local

/opt/inotify_rsync.sh

6、修改index.html文件,验证

更多推荐

从小白到大神之路之学习运维第31天

本文发布于:2024-02-05 10:59:49,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1745145.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:之路   大神   运维第

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!