Linux使用rsync客户端与服务端同步目录进行备份
一、服务端设置
1. 修改 server 端配置
# vi /etc/rsyncd.conf
修改:
uid = nobody # 该选项指定当该模块传输文件时守护进程应该具有的uid.默认值为”nobody”.
gid = nobody # 该选项指定当该模块传输文件时守护进程应该具有的gid.默认值为”nobody”.
max connections = 4 # 最大连接数为4
use chroot = no # 不使用chroot
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
hosts allow = 28.16.67.10 # 哪些客户端IP可以访问rsync服务
#hosts deny = 192.168.100.0/24 # 哪些IP不可以访问rsync服务 0/24 代表 192.168.100 该IP段
添加一个自定义的同步模块配置:
[mysqlbackup] # rsync同步模块的设定名称
path = /mydata/mysql/data # 需要同步的数据存放路径
comment = mysql backup folder # 注释
auth users = root # 指定用户
ignore errors # 忽略错误
read only = yes # 只读
list = no # 不能列表
auth users = root # 连接rsync服务的帐号
secrets file = /etc/rsyncd.pwd # 指定存放帐号密码的位置
2. 服务端生成密码文件
# echo root:123456 >> /etc/rsyncd.pwd
配置文件权限,仅允许 root 使用:
# chmod 600 /etc/rsyncd.pwd
3. 启动 rsync 守护进程方式启动
# rsync –-daemon
4. 添加到自启动文件
# echo "rsync --daemon" >> /etc/rc.d/rc.local
5. 检查 rsync 默认使用的是873端口,除非特殊情况,一般不要去修改
# netstat -na | grep 873
显示如下:
tcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN
tcp 0 0 :::873 :::* LISTEN
二、客户端设置:
1. 生成密码文件 rsync 服务端 root 帐号密码 (注:只要密码)
# echo 123456 >> /etc/rsyncd.pwd
# chmod 600 /etc/rsyncd.pwd
2. 指定客户端目录与服务端指定的rsync模块配置的目录同步,并删除客户端存在而服务端不存在的目录或文件
# rsync -vzrtopg --progress --delete --password-file=/etc/rsyncd.pwd root@24.12.36.55::mysqlbackup /data/mysql
# -v, –verbose 详细模式输出
# -z, –compress 对备份的文件在传输时进行压缩处理
# -r, –recursive 对子目录以递归模式处理
# -t, –times 保持文件时间信息
# -o, –owner 保持文件属主信息
# -p, –perms 保持文件权限
# -g, –group 保持文件属组信息
# –-progress 显示传输进度
# –-delete 删除本地备份目录中服务器模块指定目录中没有的文件
# –-password-file 从指定文件中得到密码
3. 制定计划任务
# crontab -e
加入:
0 0 * * * rsync -vzrtopg --delete --password-file=/etc/rsyncd.pwd root@24.12.36.55::mysqlbackup /data/backup/mysql > /dev/null 2>&1
Linux使用rsync客户端与服务端同步目录进行备份的更多相关文章
- window安装rsync客户端和服务端
		
原文地址: https://www.cnblogs.com/janas/p/3321087.html 下载地址: https://linux.linuxidc.com/index.php?folder ...
 - 远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接
		
本篇blog将讲述sshd服务提供的两种安全验证的方法,并且通过这两种方法进行两台Linux虚拟机之间的远程登陆. 准备工作: (1) 准备两台安装有Linux系统的虚拟机,虚拟机软件采用VM ...
 - c++ 网络编程(一)TCP/UDP  windows/linux 下入门级socket通信 客户端与服务端交互代码
		
原文作者:aircraft 原文地址:https://www.cnblogs.com/DOMLX/p/9601511.html c++ 网络编程(一)TCP/UDP 入门级客户端与服务端交互代码 网 ...
 - linux epoll机制对TCP 客户端和服务端的监听C代码通用框架实现
		
1 TCP简介 tcp是一种基于流的应用层协议,其“可靠的数据传输”实现的原理就是,“拥塞控制”的滑动窗口机制,该机制包含的算法主要有“慢启动”,“拥塞避免”,“快速重传”. 2 TCP socket ...
 - NIO【同步非阻塞io模型】关于 NIO socket 的详细总结【Java客户端+Java服务端 + 业务层】【可以客户端间发消息】
		
1.前言 以前使用 websocket来实现双向通信,如今深入了解了 NIO 同步非阻塞io模型 , 优势是 处理效率很高,吞吐量巨大,能很快处理大文件,不仅可以 做 文件io操作, 还可以做sock ...
 - linux网络编程之用socket实现简单客户端和服务端的通信(基于UDP)
		
单客户端和服务端的通信(基于UDP) 代码 服务端代码socket3.c #include<sys/types.h> #include<sys/socket.h> #inc ...
 - Linux下Rsync+sersync实现数据实时同步
		
inotify 的同步备份机制有着缺点,于是看了sersync同步,弥补了rsync的缺点.以下转自:http://www.osyunwei.com/archives/7447.html 前言: 一. ...
 - Linux下Rsync+Inotify-tools实现数据实时同步
		
Linux下Rsync+Inotify-tools实现数据实时同步 注意:下面的三个案例都是rsync 每次都是全量的同步(这就坑爹了),而且 file列表是循环形式触发rsync ,等于有10个文件 ...
 - TLSv1.3 Support:主流 Web 客户端和服务端对 TLSv1.3 的支持情况
		
TLSv1.3 Support:主流 Web 客户端和服务端对 TLSv1.3 的支持情况 请访问原文链接:https://sysin.org/blog/tlsv1-3-support/,查看最新版. ...
 
随机推荐
- VS 使用技巧
			
1.按下alt键,可以做到竖向选择 2.
 - C语言之总结1
			
1). 终端常用的命令: pwd 显示终端的工作路径. ls list 清单 显示当前工作路径下的所有的文件以及文件夹. ls -l 以详细信息显示当前工作路径下的所有的文件以及文件夹. cd 要切 ...
 - 点击某一按钮新增click,并切换页面
			
应用场景:对于web端接收手机验证码的处理方法:1.如果有权限可以通过查询数据库来获得手机验证码,方便快捷.2.如果后台系统保存了手机验证码,可以去后台获取验证码,然后填写到前台页面,此方法有两种处理 ...
 - 开发团队在TFS中使用Git Repository (一)
			
在研发团队中,代码版本管理是最为基础的必要工具.个人使用过的版本管理工具有SVN.VSS.ClearCase.TFS.Git,从团队的角度和使用角度来说,个人倾向于与使用TFS作为团队的基础工具.首先 ...
 - Excel单元格所在的行和列变色
			
网友问到如何通过移动光标选择单元格,所在的行和列变色.如每次输入价格的时候,想想在横竖方向上有颜色标识,这样方便对照输入价格 . 这里可以使用窗体的Worksheet_SelectionChange ...
 - js实现文本框或文本域在用户输入时(oninput)触发事件,操作元素
			
写在前面:给不同的文本框设定同样的效果,当文本框没有内容输入时,‘下一步’按钮不可用且透明度为0.5.当有内容输入时(并不是获得焦点时focus),‘下一步’按钮状态可用, 且透明度为1. <s ...
 - gridcontrol datatemplate trigger
			
<TextBlock Name="textBlock" HorizontalAlignment="Left" Text="{Binding Va ...
 - 关于在框架中使用curl的思考,以及,curl其实很好用
			
初步猜想: 在接触到框架文档的第一阶段时,会觉得控制器调用模型就是一件很简单的事,tp中用D方法或者M方法来实例化模型,laravel中用命名空间来加载模型,CI中用$this->load-&g ...
 - nginx https 配置
			
1.创建证书并下载(下载完成后有两个文件) *.pem *.key 2.将两个文件放在linux 某个目录下 3.配置nginx的conf配置文件 server{ # https 端口默认不是80,是 ...
 - intellij idea 生成UUID
			
Intellij IDEA 默认没启用这个功能 需要手动设置一下 , 下面是路径 Setting->Inspections->Serialization issues->Serial ...