Centos 6.3 x86_64配置rsync

本文涉及的产品
云原生数据库 PolarDB MySQL 版,通用型 2核8GB 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数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
目录
相关文章
|
6月前
|
应用服务中间件 Linux 网络安全
Centos 8.0中Nginx配置文件和https正书添加配置
这是一份Nginx配置文件,包含HTTP与HTTPS服务设置。主要功能如下:1) 将HTTP(80端口)请求重定向至HTTPS(443端口),增强安全性;2) 配置SSL证书,支持TLSv1.1至TLSv1.3协议;3) 使用uWSGI与后端应用通信(如Django);4) 静态文件托管路径设为`/root/code/static/`;5) 定制错误页面(404、50x)。适用于Web应用部署场景。
722 87
|
4月前
|
存储 Linux Apache
在CentOS上配置SVN至Web目录的自动同步
通过上述配置,每次当SVN仓库中提交新的更改时,`post-commit`钩子将被触发,SVN仓库的内容会自动同步到指定的Web目录,从而实现代码的连续部署。
186 16
|
4月前
|
NoSQL 安全 Linux
设置Redis在CentOS7上的自启动配置
这些步骤总结了在CentOS 7系统上设置Redis服务自启动的过程。这些命令提供了一个直接且明了的方式,确保Redis作为关键组件在系统启动时能自动运行,保障了依赖于Redis服务的应用的稳定性和可用性。
467 9
|
6月前
|
Linux
Centos6配置阿里云yum源报错
在CentOS 6配置阿里云Yum源时,可能出现EPEL仓库访问报错(404 Not Found)。解决方法:编辑`/etc/yum.repos.d/epel.repo`文件,将`enabled`和`gpgcheck`参数设为0 ``` 此设置可解决仓库无法访问的问题。
1615 29
|
6月前
|
Ubuntu 安全 Linux
CentOS与Ubuntu中防火墙配置命令集汇
有了这些,你就能遨游在 CentOS 和 Ubuntu 的海洋中,频繁地改变你的防火墙设置,快速地应对各种安全威胁,同时也能保证你的系统可以正常工作。出发吧,勇敢的编程者,随着这些命令集的涌动,扬帆起航,走向安全的网络世界!
220 5
|
7月前
|
关系型数据库 MySQL Linux
CentOS 7系统下详细安装MySQL 5.7的步骤:包括密码配置、字符集配置、远程连接配置
以上就是在CentOS 7系统下安装MySQL 5.7的详细步骤。希望这个指南能帮助你顺利完成安装。
1820 26
|
7月前
|
安全 Linux 网络安全
在Linux(CentOS和AWS)上安装更新的git2的方法并配置github-ssh
经过以上这些步骤,你现在就能在GitHub上顺利往返,如同海洋中的航海者自由驰骋。欢迎你加入码农的世界,享受这编程的乐趣吧!
322 10
|
10月前
|
Java
CentOS7.8配置Adoptium-Java17运行环境
本指南介绍如何设置清华镜像源并安装 Temurin-17-JRE 运行环境。首先,编辑 `/etc/yum.repos.d/adoptium.repo` 文件,配置清华镜像源。接着,使用 `yum install -y temurin-17-jre` 命令安装 Temurin-17-JRE,并通过 `java --version` 验证安装成功。相关配置和操作界面截图附后。
346 8
|
10月前
|
网络协议 Java 应用服务中间件
centos7环境下tomcat8的安装与配置
本文介绍了在Linux环境下安装和配置Tomcat 8的详细步骤。首先,通过无网络条件下的文件交互软件(如Xftp 6或MobaXterm)下载并解压Tomcat安装包至指定路径,启动Tomcat服务并测试访问。接着,修改Tomcat端口号以避免冲突,并部署Java Web应用项目至Tomcat服务器。最后,调整Linux防火墙规则,确保外部可以正常访问部署的应用。关键步骤包括关闭或配置防火墙、添加必要的端口规则,确保Tomcat服务稳定运行。