rsync3.0 (初稿 逐步完善)

实验环境为 centos 7.2 系统

 

CentOS Linux release 7.2.1511 (Core)

 

主机  ip               10.1.250.19

客户端  ip           10.1.250.20

 

 

系统默认安装版本:

 

 rpm -qa |grep rsync

 

rsync-3.0.9-17.el7.x86_64

 

没有的可以 自己安装:

  yum -y install rsync

 

配置服务 开机自启

   systemctl enable  rsyncd.service  (开机自启)

 

   systemctl start  rsyncd.service (启动服务)

   systemctl status rsyncd.service  (查看启动状态)

 

查看端口状态:

[root@zabbix-agent ~]# lsof -i:873

COMMAND   PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME

rsync   14424 root    4u  IPv4 9327226      0t0  TCP *:rsync (LISTEN)

rsync   14424 root    5u  IPv6 9327227      0t0  TCP *:rsync (LISTEN)

 

 

主机配置 文件:

 

创建密码验证文件

 vim /etc/rsyslog.d/rsync.ps

root:asdfgh

用户名:密码 (此密码为自定义 密码 只要和客户端保持一致即可 )

chmod 600 /etc/rsyslog.d/rsync.ps  (赋予权限只读)

 

主配置文件

 

 mv  /etc/rsyncd.conf  /etc/rsyncd.confbak  (备份原文件)

新建配置文件

vim /etc/rsyncd.conf   

 

[gaoqiang]                    

path= /gaoqiang

auth users = root

uid = root

gid = root

secrets file = /etc/rsyslog.d/rsync.ps

read only = no

 

内容注释:

[gaoqiang]               (认证名称)                 

path= /gaoqiang     (备份的根目录)

auth users = root     (验证用户)

uid = root                    (用户ID

gid = root                     (组 ID

secrets file = /etc/rsyslog.d/rsync.ps  (验证密码配置文件位置 可以自定义位置)

read only = no                                           (关闭只读 允许修改)

 

重启服务:

 systemctl  restart  rsyncd.service (启动服务)

创建模拟数据:

 cd   /gaoqiang

 touch  test1   

 touch  test2

 touch  test3

 touch  test4

 

主机配置完成!

 

 

客户端同样需要安装 rsync 服务

 

创建密码验证文件

vim  /etc/rsyncd.ps

 

   asdfgh  (只填写 密码 ,要保持一致)

 

chmod 600 /etc/rsyncd.ps  (赋予权限)

配置服务 开机自启

   systemctl enable  rsyncd.service  (开机自启)

 

   systemctl start  rsyncd.service (启动服务)

   systemctl status rsyncd.service  (查看启动状态)

 

查看端口状态:

 lsof  -i:873

COMMAND   PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME

rsync   14424 root    4u  IPv4 9327226      0t0  TCP *:rsync (LISTEN)

rsync   14424 root    5u  IPv6 9327227      0t0  TCP *:rsync (LISTEN)

 

客户端配置完成!

测试:

 

手工同步文件验证

 

rsync  -vzrltogp root@10.1.250.19::gaoqiang . –password-file=/etc/rsyncd.ps

 

 rsync  -vzrltogp root@10.1.250.19::gaoqiang . –password-file=/etc/rsyncd.ps 

receiving incremental file list

./

test1

test2

test3

test4

sent 137 bytes  received 319 bytes  912.00 bytes/sec

total size is 35  speedup is 0.08

 

测试成功!

参数详解:

rsync  -vzrltogp root@10.1.250.19::gaoqiang . –password-file=/etc/rsyncd.ps

这条命令的意思是:

-vzrltogp

 

-v表示verbose(详细)

-z表示zip(压缩)

-r表示recursive(递归目录)

-topg是保持文件原有属性如o=owner(属主)t=times(时间)p=perms(权限)

g=group()的参数

root@10.1.250.19::gaoqiang

表示对服务器10.1.250.19中的gaoqiang模块进行备份,登录帐号是root

–password-file=/etc/rsync.ps

指定用来验证客户端与服务端密码一致的文件。

 

完成!

 

加入计划任务:

把命令 加入脚本

 vim  /bin/rsync_test.sh

 

rsync  -vzrltogp root@10.1.250.19::gaoqiang . –password-file=/etc/rsyncd.ps

 

 

Chmod 755   /bin/rsync_test.sh

 

加入计划任务:

Crontab -e

1 * * * *  /bin/rsync_test.sh   (每分钟执行一次文件同步 可以根据自己 实际情况配置)

 

 

 

注意和说明

1

Rsync server

会打开一个873 端口,等待客户端去连接。连接时,Rsync server 会检查口令

是否相符,若通过口令查核,则可以开始进行文件传输。第一次连通完成时,会

把整份文件传输一次,以后则就只需进行增量备份

2

rsync 的版本区别

1rsync 2.6.X 版本,在对文件进行备份时,是先列表后备份,所以在推送大量文

件时,会耗费很多的内存资源

2rsync 3.0.X 版本,在对文件进行备份时,是采用incremental file list,即:

一边列表一边备份,所以占用的内存资源只有4M~5M,因此在实际的环境中是完全可应用的

原创文章,作者:qiang1710,如若转载,请注明出处:http://www.178linux.com/17319

(0)
qiang1710qiang1710
上一篇 2016-06-03 12:46
下一篇 2016-06-03 12:46

相关推荐

  • 网络班23期学习宣言

    马哥Linux运维学院 学习宣言 亲爱的小伙伴:        欢迎大家报名马哥Linux运维网络学习班,跟随马哥学习Linux技术,成就Linux大牛之梦。在这里,我们不仅可以学习到最优秀的技术课程,还可以跟着追梦的小伙伴们一起学习、一起进步。 为了督促大家一直积极认真努力的学习,请各位同学在评论区写出你的学习宣言。…

    2016-09-05
  • inotify介绍及rsync + inotify 实时同步备份

    1、前言 rsync (remote sync)是一款非常好的数据同步工具,能够通过对比同步双方的数据变动,实现增量同步,还可以通过LAN/WAN实现远程多台主机间文件的同步,还能结合crond任务计划来执行自动备份,又可以结合ssh实现远程数据备份的安全,种种特性使他看起来相当优秀。但如果需备份数据十分庞大时,它的不足之处就显现出来了,比如每次执…

    Linux干货 2016-06-15
  • 马哥教育网络班21期-第九周课程练习

    "1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash # declare -i login_user=0 declare -i nologin_user=0 whil…

    Linux干货 2016-09-15
  • Linux文件管理及常用方法

    Linux文件管理及常用方法 一切皆文件,管理系统即用正确的方法管理相应的文件。 Linux系统中文件管理所涉及到的问题 ls -l boot.log   -rw-r–r–. 1 root   root     13…

    Linux干货 2016-11-06
  • ansible原理及简单应用

    一、基础介绍 1、简介 ansible是新出现的自动化运维工具,基于python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供…

    Linux干货 2016-01-13
  • 进入linux世界的初步认识

    1、 描述计算机的组成及其功能.
    2、 按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别.
    3、 描述Linux的哲学思想,并按照自己的理解对其进行解释性描述.
    4、 说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相应的示例来阐述.
    5、 如何在Linux系统上获取命令的帮助信息,请详细列出,并描述man文档的章节是如何划分的.
    6、 请罗列Linux发行版的基础目录名称命名法则及功用规定.

    Linux干货 2018-02-25