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。。

编辑的时候,请注意参数前面的 短横杠

时间: 2024-10-25 11:10:00

Linux服务器rsync自动备份的相关文章

服务器文件自动备份到另一个服务器上

问题描述 服务器文件自动备份到另一个服务器上 各位大神帮忙求解,前段时间我的一台服务器上的东西糟到而已删除, 现在想进行每天定时自动备份到另一台服务器上,以免悲剧再次发生, 自动备份的资料保留5天后自动删除,怎么做?非常感谢! 解决方案 httpclient从一个服务器传送文件到另一个服务器服务器文件自动备份工具另一个用libevent实现的echo服务器 解决方案二: 通过rsync等来在服务器之间备份同步http://www.cnblogs.com/itech/archive/2009/08

linux下oracle自动备份脚本

linux下oracle自动备份脚本  vi /home/oracle/backup.sh   //编写脚本 以下为脚本内容 time=` date +"%Y%m%d%H%M" ` //变量time 获取当前系统时间 su - oracle -c "exp hbskjt_0113/password owner=hbskjt_0113 file=/home/oracle/hbskjt_$time.dmp"  //导库脚本 cd /home/oracle tar zcv

linux中FTP自动备份VPS脚本

  服务器多了,网站也越来越多,总觉得不整个备份心里放不下心,并且有好几次rm的操作失误,造成难以挽回的损失.并且大多数的VPS提供商是不提供自动备份功能或者此功能收费价格略高.所以自己还是有必要把这个工作落实一下,说不定哪天就用到了. 使用的备份空间我自己是用的是Godaddy的Online Storage,优点在于,我的VPS都是美国服务商,选用Godaddy的空间传输速度比较有保证,另外最关键的价格也能接受,100G空间一年下来不到30美金,鉴于目前美金对人民币的汇率,这个价格我觉得已经相

在Linux服务器上做备份时需要考虑的细节

  如果您进行一般备份,以每日为基础较好 (至少对更动频繁的使用者档案),您将会有助於减少档案的损失,并且增加复原程度.最安全的备份方法是将他们纪录於不同的媒体中,例如磁带,抽取式硬碟,可写式 cd .等. 进行一般的备份应该是负责任的系统管理者的最高优先考虑.虽然Linux是一个高度可靠的作业系统,系统失效仍然可能发生.可能因为硬体故障,电源中断,或其他不可预料的问题.更常见的这些问题是来自人为的错误,不当的变动,甚至因为删除重要的档案.如果您负责管理系统上的用户,一定可能常被要求重建因为不小

linux服务器 rsync同步设置详细指南

一.介绍 (不想看直接可以跳过) 迁移EMOS服务器,新服务器搭建好之后做完了测试,接着很重要的工作就是要完整的把老邮件系统中的邮件数据迁移过来,选择拷贝的方式自然可以,但是难免会丢失一些邮件(在此期间收到的邮件),于是就考虑到了rsync. Rsync  是一个远程数据同步工具,可通过  LAN/WAN  快速同步多台主机间的文件.  Rsync  本来是用以取代  rcp  的一个工具,它当前由   rsync.samba.org  维护.  Rsync  使用所谓的"  Rsync   演

linux中mysql自动备份脚本

其实这个mysql自动备份的小脚本非常简单,下面是这个小脚本的步骤.  代码如下 复制代码 #cd /www #mkdir mysqlbackup #vi mysqlautobackup.sh 这个mysqlautobackup.sh的文件里写入以下内容:  代码如下 复制代码 filename=`date +%Y%m%d` mysql_bin_dir/mysqldump --opt datename -u dateuser -pdatepassword | gzip > /www/mysqlb

linux下Vps自动备份web和mysql数据库的脚本_Linux

用Vps什么事都要自己费心,备份也是.像Linode里的备份服务是要收费的,一个月是5美元.与其花这5美元,不如自己丰衣足食.为服务安装上了Dropbox,设定为每天4:00-6:00 开启同步服务.在之前运行两个脚本,自动备份web文件夹和mysql数据库. 两个脚本都是备份文件到/root/Dropbox/backup目录里,并自动删除10天前的备份.web备份是每周行一次,删除30天前的备份. 一.备份WEB文件夹 1.备份/home/users/public_html目录 2.修改cro

linux下mysql自动备份数据库与自动删除临时文件_Mysql

一.每日23:00自动删除临时文件 首先查看一下crontab的任务列表:crontab -l然后新建:crontab -e添加一行:00 03 * * * rm -rf /www/cmstest/my120/public/scripts/jpgraph/*保存退出.重启服务:  /etc/rc.d/init.d/crond restart 二.每日24:00自动备份数据库 利用系统crontab来定时执行备份文件,按日期对备份结果进行保存,达到备份的目的. 1.创建保存备份文件的路径/mysq

linux下数据库自动备份并上传到远程服务器

 代码如下 复制代码 #!/bin/bash #FTP信息 FTP_IP= FTP_USER= FTP_PASS= #备份数据库 /etc/init.d/mysqld stop MySQLBakName=MySQL_$(date +"%Y%m%d").tar.gz tar zcf /home/backup/$MySQLBakName /var/lib/mysql /etc/init.d/mysqld start #备份网站 WebBakName=Web_$(date +%Y%m%d).