Linux服务器rsync自动备份
一、在 server 端配置
1. 编辑配置文件
#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 = 192.168.100.1 # 哪些电脑可以访问rsync服务
#hosts deny = 192.168.100.0/24 # 哪些电脑不可以访问rsync服务 [mysqlbackup] # rsync区段的设定名称
path = /zsjdata/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. 在server端生成一个密码文件 /etc/rsyncd.pwd
# echo root:xxx >> /etc/rsyncd.pwd
# 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 XXX >> /etc/rsyncd.pwd
#chmod 600 /etc/rsyncd.pwd
2. 测试备份命令
客户端备份服务器上指定模块中的数据 备份rsync服务器上postfix中模块指定文件夹,并删除本地服务器上没有的内容
#rsync -vzrtopg --progress --delete --password-file=/etc/rsyncd.pwd root@192.168.100.2::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@192.168.100.2::mysqlbackup /data/mysql > /dev/null 2>&1
本来是想给自己两台服务器做个简单的双机数据库自动备份,一台服务器在美国百兆共享,一台在国内5兆独享,结果测试是没问题成功了,但这个速度实在太让人蛋疼了,才20KB。。
编辑的时候,请注意参数前面的 短横杠
Linux服务器rsync自动备份的更多相关文章
- 在linux服务器上自动备份数据库
脚本如下,没有任何问题: # !/usr/bin/pythonimport osimport timeimport datetimeimport pipesimport glob DB_HOST = ...
- linux中FTP自动备份VPS脚本
服务器多了,网站也越来越多,总觉得不整个备份心里放不下心,并且有好几次rm的操作失误,造成难以挽回的损失.并且大多数的VPS提供商是不提供自动备份功能或者此功能收费价格略高.所以自己还是有必要把这个工 ...
- 服务器下自动备份MySQL
Linux下 service crond restart */ * * * * /home/mysqlbackup.sh >/home/runssh.log backup.sh #bin/bas ...
- [转载]linux下mysql 自动备份
ySQL :: Linux 下自动备份数据库的 shell 脚本Linux 服务器上的程序每天都在更新 MySQL 数据库,于是就想起写一个 shell 脚本,结合 crontab,定时备份数据库.其 ...
- Linux服务器的常用备份方法
系统备份是系统管理工作中十分重要的一个环切,本文详细介绍了各种Linux系统的备份方法,相信对大家的日常管理工作有所帮助. 备份是一项重要的工作,但是很多人没有去做.一旦由于使用不当造成数据丢失,备份 ...
- 实体linux服务器-由自动ip改为固定ip后,无法上网问题--配置问题解法
新入公司,研发产业为零,开始搞. linux之前是自动获取ip地址的,网上搜索的帖子,耍流氓的居多,不能上网的原因很多,我这个是配置不对,看是否与你的一样. 1.首先看下当前电脑网卡,根据地址可以判断 ...
- [Linux] 服务器镜像定时备份解决方案 crontab+rsync+flock
两台服务器定时同步文件解决方案: 环境: 主机:192.168.1.1 镜像机:192.168.1.2 需要将主机内容备份至镜像机(假设用户都为root) 备份内容为 /export 目录下所有内容至 ...
- java通过ftp和sftp上传war包上传到Linux服务器实现自动重启tomcat的脚本代码
ar包自动上传Linux并且自动重启tomcat 用的是jdk1.7出的文件监控 支持ftp和sftp,支持多服务器负载等 配置好config 非maven项目导入直接使用 #\u76D1\u542C ...
- Linux oracle数据库自动备份自动压缩脚本代码
Linux oracle数据库备份完成后可以自动压缩脚本代码. 复制代码代码如下: #!/bin/bash #backup.sh #edit: www.jbxue.com ##系统名称 sysname ...
随机推荐
- Node.js 使用gm处理图像
现要对之前的文件服务器进行扩展,听网上说gm处理图像来一套一套的.so决定使用该工具去实现文件服务器的图片处理这块.目标有下现在通过参数去获得缩略图http://xxx.xxx.com/image/2 ...
- H5自带表单验证
HTML5自带的表单验证 转载:https://www.web-tinker.com/article/20781.html HTML5对表单元素提供了patern属性,它接受一个正则表达式.表单提交时 ...
- centos下安装Jenkins轻松搞定
jenkins安装步骤如下: 命令:yum -y list java* yum -y install java-1.7.0-openjdk.x86_64 ...
- Java 不使用科学计数法表示数据设置
java.text.NumberFormat nf = java.text.NumberFormat.getInstance(); nf.setGroupingUsed(false); nf.form ...
- bootstrap IE8 相互兼容
针对 IE8 仍然需要额外引入 Respond.js 文件(由于仍然利用了浏览器对媒体查询(media query)的支持,因此还需要做处理) <html lang="zh-cn&qu ...
- 解决Intellij Idea里tomcat启动报The JRE_HOME environment variable is not defined correctly的错误
创建一个maven项目后想启动tomcat测试一下新建的maven项目,结果一直报The JRE_HOME environment variable is not defined correctly, ...
- 浏览器的云加速可能导致IP统计异常
前段时间弄个流量统计相关的东西,请求展示图片时根据请求的IP进行 md5 签名生成点击链接的验证参数,结果发现一个莫名其妙的问题 发现点击日志中有一小部分点击的IP居然不一致,如果是开放给别人用可能存 ...
- C# lock关键词/lock语句块、线程锁
一.lock关键词说明 1. lock 关键字将语句块标记为临界区,方法是获取给定对象的互斥锁,执行语句,然后释放该锁. 2. lock 语句块锁定,功能等同于 Monitor.Enter(obj): ...
- js-数据转换
<script type="text/javascript"> var msg = '{"code": 0, "data": 2 ...
- 注意Thread.interrupt()方法的真正作用并不是用来中断线程
程序是很简易的.然而,在编程人员面前,多线程呈现出了一组新的难题,如果没有被恰当的解决,将导致意外的行为以及细微的.难以发现的错误. 在本篇文章中,我们针对这些难题之一:如何中断一个正在 ...