rsync(远程同步)是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份、保持链接和权限,且采用优化的同步算法,传输前进行压缩,因此适用于异地备份、镜像服务器等应用(虽然现在群集解决了这些问题,但还是有用上rsync远程同步的时候吧!)

配置rsync的大概流程:

  1. 配置rsync同步源的rsyncd.conf文件;
  2. 创建备份账号;
  3. 将rsync程序以守护进程(--daemon)方式运行;

所需环境:

  • server A(192.168.1.1):用来做rsync源服务器;
  • server B(192.168.1.2):客户端

server A配置如下:

1、开始配置/etc/rsyncd.conf文件:

[root@localhost ~]# vim /etc/rsyncd.conf...........................uid = nobody                     #启用匿名用户gid = nobodyuse chroot = yes                 #禁锢在源目录address = 192.168.1.1       #监听地址port 873                             #监听端口
# max connections = 4       #自带的注释信息,不管它,包括下面的注释信息log file = /var/log/rsyncd.log         #日志文件位置pid file = /var/run/rsyncd.pid         #存放进程ID的文件位置hosts allow = 192.168.1.0/24    #允许访问的客户端地址,可以省略不写,则表示允许任意地址访问
# exclude = lost+found/
# transfer logging = yes
# timeout = 900
# ignore nonreadable = yes
# dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2[wwwroot]     #共享模块名称path = /var/www/html                 #源目录的实际路径comment = ftp export area       #提示信息,无所谓的,不写也行read only = no                      #有读写的权限,若改为“yes”,则表示为只读权限。dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2  #同步时不再压缩的文件类型。auth users = backuper                  #授权账户secrets file = /etc/rsyncd_users.db             #存放账户信息的数据文件。

同步可以采用匿名的方式,将其中的“auth users”和“secrets file”配置记录去掉即可。

2、为备份账户创建数据文件:

[root@localhost ~]# vim /etc/rsyncd_users.db    #该文件名必须和rsync中的“secrets file”指定的路径一致backuper:pwd123             #该账号必须和rsync配置里的授权用户一致[root@localhost ~]# chmod 600 /etc/rsyncd_users.db
[root@localhost html]# chmod o+w /var/www/html            #需要其他用户对源目录有读取权限
[root@localhost html]# ls -ld /var/www/html/
drwxr-xrwx. 2 root root 6 4月  21 2018 /var/www/html/

需要注意的是:“backuper”这个用户和系统用户账号,没有半毛钱关系,这是rsync服务独立的账号配置文件。

并且存放该账号的文件必须是“600”的权限,否则客户端同步时,会验证失败,哪怕权限是“777”都不行,可能是权限过大会触发它的保护机制

3、启动rsync服务:

[root@localhost ~]# rsync --daemon[root@localhost ~]# netstat -anpt | grep rsync
tcp        0      0 192.168.1.1:873   0.0.0.0:*    LISTEN      12187/rsync         

若是更改了rsync的配置文件,则需要重启该服务才可生效,重启该服务,需要先kill这个进程,然后再使用 rsync --daemon启动它即可:

[root@localhost ~]# kill $(cat /var/run/rsyncd.pid)
[root@localhost ~]# rsync --daemon

在server B使用rsync备份工具:

rsync命令的常用备份选项:

在server B进行备份:

[root@localhost myweb]# rsync -avz backuper@192.168.1.1::wwwroot /myweb
Password:
[root@localhost myweb]# ls
re.txt

说一下“--delete”这个神奇的选项:


#现在server  A的目录下有以下几个文件:[root@localhost /]# ls /var/www/html/
index2.html  index3.html  index.html#server  B的目录下有以下文件:
[root@localhost myweb]# ls /myweb/
1.html  2.html  3.html  re.txt#在server  B客户端执行以下同步命令:
[root@localhost myweb]# rsync -avz --delete backuper@192.168.1.1::wwwroot /myweb
Password:
#输出以下信息:
receiving incremental file list
deleting re.txt
deleting 3.html
deleting 2.html
deleting 1.html
./
index.html
index2.html
index3.htmlsent 84 bytes  received 255 bytes  135.60 bytes/sec
total size is 42  speedup is 0.12[root@localhost myweb]# ls                    #查看一下/myweb目录下的变化
#之前的文件都没了,和rsync服务端的文件保持一致了
index2.html  index3.html  index.html

关于rsync的任务计划:

[root@localhost myweb]# vim /etc/server.pass             #建立密码文件,为了在同步时不需要输入密码pwd123[root@localhost myweb]# chmod 600 /etc/server.pass
[root@localhost myweb]# crontab -e             #编辑任务计划
30      22      *       *       *       /usr/bin/rsync -az --delete --password-file=/etc/server.pass backuper@192.168.1.1::wwwroot /myweb#以上任务计划表示在每天22:30执行同步。
[root@localhost myweb]# systemctl restart crond         #重启一下crond服务。

转载于:https://blog.51cto.com/14154700/2404358

centos 7配置rsync源服务器相关推荐

  1. Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步

    1.什么是 Rsync? Rsync 是一个开源的快速备份工具,是Linux和UNIX操作系统默认安装的组件之一,可在不同主机间镜像同步整个目录,并支持增量备份文件传输,保持链接和权限,采用优化的同步 ...

  2. 企业级别应用--rsync远程同步(配置 rsync 备份源、rsync 下行和上行、inotify+rsync 实时备份)

    文章目录 一.配置 rsync 源服务器 1.1 rsync简介 1.2 rsync特点 1.3 配置 rsync 同步源 1.4 测试rsync功能 下行同步的三种方式 二.inotify+rsyn ...

  3. centos 多台 文件夹同步_CentOS7配置rsync实现文件同步

    rsync(remote synchronize )是一个远程文件同步工具,支持多个操作系统,用于在多台服务器之间同步目录和文件.rsync采用增量传输文件的方法,只传输新文件和修改过的文件,而不是每 ...

  4. Centos7 下 配置 rsync 以及 rsync+inotify 实时同步

    Centos 7 下 配置 Rsync 以及 rsync+inotify 实时同步 rsync介绍 rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支 持增量备份,保持链接和 ...

  5. 配置Rsync和Rsync + inotify

    第一部分:配置Rsync 一.介绍Rsync工具 rsync是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.它使用所谓的"Rsync演算法"来使本地和远程两个 ...

  6. CentOS 7部署rsync备份服务器

    1.简介 1.1rsync(官方地址    http://wwww.samba.org/ftp/rsync/rsync.html)  一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件 ...

  7. CentOS下配置VNCServer,重启服务仍然生效

    CentOS下配置VNC Server,重启服务,配置仍然生效的方法: 本文前提:系统已安装好gnome桌面,如果没有请执行下面的命令安装即可. yum groupinstall "Desk ...

  8. 在Windows中配置Rsync同步

    在Windows中配置Rsync同步 Rsync是一款不错的文件免费同步软件,可以镜像保存整个目录树和文件系统,同时保持原来文件的权限.时间.软硬链接.第一次同步时 rsync 会复制全部内容,下次只 ...

  9. centos oracle 服务自动启动,CentOS下配置Oracle 11gR2为系统服务自动启动

    CentOS下配置Oracle 11gR2为系统服务自动启动 CentOS下配置Oracle 11gR2为系统服务自动启动 为什么80%的码农都做不了架构师?>>> PS:在Wind ...

最新文章

  1. vfprintf php,PHP vfprintf() 函数
  2. linux排序语言,Linux sort 排序命令uniq去重复行
  3. 【django】项目开发准备【1】
  4. python 购物车分析_python 简易购物车程序解析
  5. PolarDB-X 2.0 全局 Binlog 和备份恢复能力解读
  6. 《现代操作系统》精读与思考笔记 第七章 多媒体
  7. no active checks on server [192.168.1.107:10051]: host [ ] not found
  8. mysql sample函数_SAMPLE函数
  9. 【计算机网络笔记】编码与调制
  10. android studio for android learning (五) 最新Activity理解与其生命周期
  11. python 让电脑发出声音代码_python - 代码完成时发出声音警报
  12. HBuilderX配置自动格式化,统一代码规范
  13. 2020-10-20 Ant Design Vue 关闭国际化设置默认语言为中文的
  14. 《零基础学C语言》光盘内容
  15. java计算机毕业设计社区健康信息管理系统源程序+mysql+系统+lw文档+远程调试
  16. 51单片机实战教程(22 看门狗)
  17. 知乎上的一道问题:出家人怎么解决性欲?
  18. 【收藏】数据分析必会的Excel高频函数合集
  19. Matplotlib学习笔记(第一章)
  20. Linux学习:网站服务

热门文章

  1. nginx windows启动停止_Nginx之3抛砖引玉 - (目录索引)
  2. Matlab中3条曲线归一,matlab中关于数据归一化函数mapminmax的使用
  3. HTML打开网页拒绝访问,WindowsApps无法访问怎么解决?
  4. android studio配置国内,Android studio配置国内镜像源
  5. 米家扫地机器人是石头代工_扫地机器人“两强”突进,选科沃斯还是石头科技?...
  6. setcellvalue 格式_Java Cell.setCellValue方法代码示例
  7. C++安全方向(二):2.3 base64编码原理讲解
  8. python多核多线程编程实例_Python多线程
  9. java 找不到或无法加载类_解决Java中找不到或无法加载主类错误
  10. php怎么让视频自动播放,怎样让优酷等视频实现自动播放