章工运维 章工运维
首页
  • linux
  • windows
  • 中间件
  • 监控
  • 网络
  • 存储
  • 安全
  • 防火墙
  • 数据库
  • 系统
  • docker
  • 运维工具
  • other
  • elk
  • K8S
  • ansible
  • Jenkins
  • GitLabCI_CD
  • 随笔
  • 面试
  • 工具
  • 收藏夹
  • Shell
  • python
  • golang
友链
  • 索引

    • 分类
    • 标签
    • 归档
    • 首页 (opens new window)
    • 关于我 (opens new window)
    • 图床 (opens new window)
    • 评论 (opens new window)
    • 导航栏 (opens new window)
周刊
GitHub (opens new window)

章工运维

业精于勤,荒于嬉
首页
  • linux
  • windows
  • 中间件
  • 监控
  • 网络
  • 存储
  • 安全
  • 防火墙
  • 数据库
  • 系统
  • docker
  • 运维工具
  • other
  • elk
  • K8S
  • ansible
  • Jenkins
  • GitLabCI_CD
  • 随笔
  • 面试
  • 工具
  • 收藏夹
  • Shell
  • python
  • golang
友链
  • 索引

    • 分类
    • 标签
    • 归档
    • 首页 (opens new window)
    • 关于我 (opens new window)
    • 图床 (opens new window)
    • 评论 (opens new window)
    • 导航栏 (opens new window)
周刊
GitHub (opens new window)
  • linux

    • rsync

      • rsync用法及参数详解
      • rsync服务实现推送,拉取
    • dns

    • sed、awk、grep、find四剑客

    • LVM管理
    • sudo权限规划
    • linux修改网卡为eth0的两种方法
    • Logrotate入门了解及生产实践
    • linux中用dd命令来测试硬盘读写速度
    • linux 阿里云盘挂载错误
    • CentOS7安装Android SDK
    • centos7安装更新git
    • linux启动顺序
    • centos7升级openssl
    • expect工具的安装和使用方法
    • linux下使用v2ray
    • centos7安装java环境的两种方式
    • linux-centos7系统设置时区及同步时间
    • rsyslog日志系统:rsyslog配置文件
    • rsyslog的安装、使用、详解
    • safe-rm防止删除重要的文件
    • linux如何获取打开文件和文件描述符数量
    • LVS集群-DR模式
    • linux服务器安装ffmpeg
    • linux服务器安装samba
    • 使用openssl创建自签发证书
    • linux服务器部署next.js服务
    • linux服务器ionice命令使用方式
    • linux服务器curl命令常用操作
  • windows

  • 中间件

  • 网络

  • 安全

  • 存储

  • 防火墙

  • 数据库

  • 系统

  • docker

  • other

  • 监控

  • 运维
  • linux
  • rsync
章工运维
2022-12-09

rsync服务实现推送,拉取

# rsync服务实现推送,拉取

https://www.csdn.net/tags/OtTacg3sMzk5Mi1ibG9n.html

1.简介

rsync是一款远程数据同步工具,一个Rsync server能够同时备份多个客户端数据,需要scp,ssh,daemon的支持,默认端口为873。

rsync + crond 可以实现数据定时同步,rsync + inotify可以实现数据的实时同步。

工作中的Rsync服务最好以只读方式提供要备份的数据,避免造成误操作。

*2.实验环境介绍*

两台CentOS6.3 x64 测试机,一台server,一台client。系统已经默认安装了rsync软件。

*3.Rsync命令格式及命令参数*

参数介绍:

-a 归档模式,表示以归档方式传输文件,并保持所有文件属性

-v 详细模式输出

-z 对备份的文件在传输时进行压缩处理

--delete 无差异同步

*4.Rsync的三种工作模式*

1)本地的拷贝和删除

# rsync avz /etc/hosts /tmp 将文件hosts拷贝到/tmp目录中。与cp命令相似,但区别在rsync可以自己比较两个文件,实现增量备份

# rsync avz delete /tmp/ /opt/ /tmp/目录为空,加上 --delete参数,相当于 rm 命令

--delete可以理解为:本地有远端有,本地没有删除远端有的

2)remote shell

rsync远程"推"和"拉"

(推)# rsync avzP e 'ssh p 22' /tmp/ root@192.168.87.138:/tmp/aaa

把本地的 /tmp/ 目录中的文件复制到192.168.87.138的 /tmp/aaa 目录下,通过22端口

(拉)# rsync avzP e 'ssh p 22' root@192.168.87.138:/tmp/ /tmp

把192.168.87.138的 /tmp/ 目录文件复制到本地的 /tmp 目录中

# rsync -avzP -e 'ssh -p 22' /tmp*/* root@192.168.87.133:/tmp

# rsync -avzP -e 'ssh -p 22' root@192.168.87.133:/tmp*/* /tmp

标红的斜杠,有这个就是推送指定文件夹的全部内容,没有这个就是推送整个目录

3)daemon (配置Rsync服务端步骤)

首先确认系统中安装了rsync版本及其版本号

# rsync --version查看当前rsync版本

# rpm qa rsync

rsync的配置文件默认不存在,需要手工创建。路径为 /etc/rsyncd.conf

编辑 /etc/rsyncd.conf 文件,内容如下。复制粘贴保存退出即可。

#Rsync server

#yuci

uid = rsync

gid = rsync

use chroot = no

max connections = 2000

timeout = 600

pid file = /var/run/rsyncd.pid

lock file = /var/run/rsync.lock

log file = /var/log/rsyncd.log

ignore errors

read only = false

list = false

hosts allow = 192.168.0.0/24

hosts deny = 0.0.0.0/32

auth users = rsync_backup

secrets file = /etc/rsync.password

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

[backup]

comment = www by yuci

path = /backup

创建rsync用户及共享的目录 /backup(创建完后检查一下,养成好习惯)

如上编辑的文件,secrets file = /etc/rsync.password 为密码文件,可以实现两台机器互信。因为是密码所以需要更改权限。

rsync_backup 是上面配置文件的 auth users = rsync_backup "123456"为连接时需要验证的密码

# rsync --daemon 启动rsync服务

# netstat lntup | grep rsync 查看rsync是否正常运行在873端口

# ps ef | grep rsync

# echo "rsync --daemon" >> /etc/rc.local 加入开机自启动

# cat /etc/rc.local

到此为止,服务器端的配置已经完成。接下来配置客户端

# echo "123456" >> /etc/rsync.password

只需要密码即可,因为在连接命令中已经有了 rsync_backup用户

# chmod 600 /etc/rsync.password

跟服务器的密码文件相同,需要修改权限

客户端只需要这简单的两步就可以了。

*5.测试环境搭建是否成功*

现在要将客户端的 /tmp/ 目录中的文件,推送到服务端的 /backup 目录中,将 /backup 目录清空,在 /tmp/ 目录中随便创建几个文件

没有报错推送成功,下图选中的backup是要对应 /etc/rsyncd.conf 中的模块命令

与上图的 ::backup 对应

回到服务器端检查,测试成功

本文转自 mlwzby 51CTO博客,原文链接:http://blog.51cto.com/aby028/1871433

微信 支付宝
#rsync
上次更新: 2025/04/03, 13:47:00

← rsync用法及参数详解 centos7搭建dns,bind配置→

最近更新
01
shell脚本模块集合
05-13
02
生活小技巧(认知版)
04-29
03
生活小技巧(防骗版)
04-29
更多文章>
Theme by Vdoing | Copyright © 2019-2025 | 点击查看十年之约 | 鄂ICP备2024072800号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式