Centos 6.3 x86_64配置rsync

本文涉及的产品
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
简介:

 Centos 6.3 x86_64配置rsync

一,rsync简介
Rsync采用“rsync算法”使用一个客户机和远程文件服务器之间的文件同步。通过rsync可以将同一个服务器的数据从一个分区备份到另一个分区,也可以将本地的系统的数据通过网络传输方式备份到任何一个远程主机上,rsync可以在中断之后恢复传输,rsync只传输源文件与目标文件之间不一致的部分。
1,加密传输数据,保证了数据的安全性
2,可以保持原来文件的权限,时间等属性。
3,可以使用rcp、ssh等方式来传输文件,当然也可以直接通过socket连接传输文件
4,支持匿名传输
5,可以镜像保存整个目录树和文件系统
6,可以增量同步数据,文件传输效率高,因而同步时间很短。
二,rsync的四种模式
1,本地shell模式:主要用于复制。
# rsync -av bacula-5.2.13  /tmp/
bacula-5.2.13/updatedb/update_postgresql_tables_7_to_8
bacula-5.2.13/updatedb/update_postgresql_tables_8_to_9
bacula-5.2.13/updatedb/update_postgresql_tables_9_to_10
bacula-5.2.13/updatedb/update_postgresql_tables_9_to_10.in
bacula-5.2.13/updatedb/update_sqlite3_tables_10_to_11
bacula-5.2.13/updatedb/update_sqlite3_tables_10_to_11.in
bacula-5.2.13/updatedb/update_sqlite3_tables_11_to_12
bacula-5.2.13/updatedb/update_sqlite3_tables_11_to_12.in
bacula-5.2.13/updatedb/update_sqlite3_tables_12_to_14
# rsync -av bacula-5.2.13/ /tmp/
platforms/freebsd/
platforms/freebsd/Makefile.in
platforms/freebsd/bacula-dir.in
platforms/freebsd/bacula-fd.in
platforms/freebsd/bacula-sd.in
platforms/freebsd/pthreads-fix.txt
platforms/freebsd/tapetest.c
 上面两个命令的差异,源参数末尾的斜杠,如果源参数的末尾没有斜杠,就将指定的源目录复制到指定的目的目录,如果源参数末尾有斜杠,就会复制指定源目录中的内容到目的目录中,而不是复制目录本身。
2,远程shell模式
# rsync -av bacula-5.2.13  192.168.1.29:test
如果没指定用户执行些命令,默认是以当前用户执行些命令,需要输入192.168.1.29的root密码。完成密码验证后,会在远程主机的root的用户根目录下创建test目录,然后将bacula目录及该目录下的内容复制过来。
3,rsync列表模式
在这个模式下,rsync与ls命令有些相似。以root用户身份查看远程主机192.168.1.29的test目录下的内容:
#rsync -a 192.168.1.29:test
查看本地
#rsync -a  /tmp
4,c/s模式
在这种模式下,rsync在后台启用一个守护进程,这个守护进程在服务器永久运行,用于接收文件传输请求,因此,客户端既可以把文件发送给守护进程,也可以向守护进程请求文件。此种模式适合作为异地的中心备份服务器或数据异地存储。
三,远程容灾备份系统
A:服务端是web服务器,网站数据每天都会增加。需要对数据进程一个备份。IP:192.168.1.28
B:作为备份机。IP 192.168.1.29
1,在两台机器上都安装rsync,在6.3的系统已经默认安装了。如果没安装可以自己源码编译或yum -y install rsync
2,在A上配置rsync的配置文件,默认没有配置文件,需要自己建立
Rsyncd.conf文件由一个或多个模块结构组成,相应地,包括全局参数和模块参数,一个模块定义从方括号中的模块名开始,直到下个模块的定义开始。模块主要是定义服务器哪个目录要被同步。每个模块都要以[name]形式。这个名字就是在rsync 客户端看到的名字,其实有点象Samba服务器提供的共享名。而服务器真正同步的数据是通过 path 来指定的。我们可以根据自己的需要,来指定多个模块。每个模块要指定认证用户,密码文件、但排除并不是必须的;
3,在A上创建配置文件
#vim /etc/rsyncd.conf
uid=nobody   
gid=nobody
port = 873
use chroot=no
max connections=10 #客户端最多连接数,默认是0,无限制
strict modes=yes #检查
pid file=/var/run/rsyncd.pid
lock file=/var/run/rsyncd.lock
log file=/var/log/rsyncd.log
[backup]     #定义模块
path=/data    #指定需要备份的文件或目录
comment=backup file #注释可以自己定义,写什么都行,写点相关的内容就行
ignore errors #忽略IO错误,详细的请查文档
read only=no
write only=no
hosts allow =*
hosts deny=192.168.1.200           #禁止此IP连接,也可以写网段。
list=false
uid=root
gid=root
auth users=backup #认证用户
secrets file=/etc/server.pass #密码存在哪个文件;里面是用“户名:密码”格式的文件
exclude =   test/   samba/  #排除/data目录下test和samba目录。
4,在A上创建密码文件
#vim /etc/server.pass
backup:123456
#chmod 600 /etc/server.pass
5,启动服务
#rsync -daemon
开机启动
#echo “rsync -daemon” >> /etc/rc.local
7,在B上创建密码文件
#vim /etc/sever.pass
123456
#chmod /etc/server.pass
8,在B上执行
#rsync -avzP --delete backup@192.168.1.28::backup /test --password-file=/etc/server.pass
--delete指定以rsync服务端为基准进行数据镜像同步,也就是要保持服务端与客户端目录的完全一到处。

backup@192.168.1.28::backup 表示对backup模块进行备份,前面的backup表示用户,使用这个用户对该模块进行备份。

9,设置定时备份策略
30 3 * * * rsync -avzP --delete backup@192.168.1.28::backup /test --password-file=/etc/server.pass
到此结束
Rsync优点:定期备份实时性不高的数据。一般文件服务器数据
缺点:如果文件数据过大时,扫描所有文件后进行对比,非常耗时。有时发生变化的文件往往是很少的一部分。因此rsync是非常低效的,其次不能实时监测,同步数据。为了解决这个问题出现rsync+inotify组合,下一篇讲解rsync+inotify。









本文转自 deng304749970 51CTO博客,原文链接:http://blog.51cto.com/damondeng/1180876,如需转载请自行联系原作者
相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
目录
相关文章
|
23天前
|
消息中间件 Linux API
centos7 安装rabbitmq自定义版本及配置
centos7 安装rabbitmq自定义版本及配置
|
22天前
|
弹性计算 关系型数据库 MySQL
centos7 mysql安装及配置
本文详细介绍了在阿里云服务器ECS上通过yum源安装MySQL 8.0.12的过程,包括更新yum源、下载并安装MySQL源、解决安装过程中可能遇到的问题等步骤。此外,还介绍了如何启动MySQL服务、设置开机自启、配置登录密码、添加远程登录用户以及处理远程连接异常等问题。适合初学者参考,帮助快速搭建MySQL环境。
110 8
centos7 mysql安装及配置
|
18天前
|
Linux
CentOS 7.x时间同步服务chrony配置详解
文章详细介绍了在CentOS 7.x系统中如何安装和配置chrony服务,以及它与ntpd服务的对比,强调了chrony在时间同步方面的高效性和准确性。
34 1
CentOS 7.x时间同步服务chrony配置详解
|
1月前
|
Ubuntu 网络协议 Linux
liunx各大发行版(centos,rocky,ubuntu,国产麒麟kylinos)网卡配置和包管理方面的区别
本文对比了Linux主要发行版CentOS、Rocky Linux、Ubuntu及国产Kylin在网卡配置与包管理上的差异。
139 1
|
1月前
|
Linux 开发工具
成功解决:CentOS 7中如何配置修改Vim
这篇文章介绍了如何在CentOS 7系统中配置和修改Vim编辑器的设置。文章首先指导读者如何检查Vim是否已经安装,如果未安装完全,提供了安装Vim的命令。接着,文章详细说明了如何编辑`/etc/vimrc`文件来配置Vim,包括设置显示行号、显示当前模式、光标位置信息、自动缩进和语法高亮等。最后,文章通过对比展示了配置前后使用vi和vim打开相同文本的效果差异,强调了Vim配置后的优势。
成功解决:CentOS 7中如何配置修改Vim
|
1月前
|
存储 安全 Linux
新 CentOS 7 服务器的基本配置
新 CentOS 7 服务器的基本配置
30 1
|
1月前
|
网络协议 Linux 网络安全
Hyper-v 如何配置 Centos7 虚拟机网络?
Hyper-v 如何配置 Centos7 虚拟机网络?
|
1月前
|
存储 安全 Java
在CentOS 7上安装和配置Elasticsearch的方法
在CentOS 7上安装和配置Elasticsearch的方法
71 0
|
1月前
|
JSON 运维 Linux
在CentOS 7上安装和配置Ansible的方法
在CentOS 7上安装和配置Ansible的方法
54 0
|
1月前
|
存储 安全 Linux
如何在 CentOS VPS 上配置 vsftpd 使用 SSL/TLS
如何在 CentOS VPS 上配置 vsftpd 使用 SSL/TLS
19 0