rsync是unix系统下的数据镜像 备份工具,一般linux系统都 自带:

# rpm -qa|grep rsync
rsync-3.0.9-17.el7.x86_64

服务器端:10.100.0.123 同步目录:/data/samba/share

客户端:10.100.0.198 同步到目录:/DataBack/SambaBack

1:服务端配置:

新建配置文件:/etc/rsyncd.conf #并配置以下内容:

# cat /etc/rsyncd.conf
uid=nobody //运行rsync守护进程的用户
git=nobody //运行rsync守护进程的组
use chroot = no //不使用chroot
max connections = 10 //最大连接数,0为不限制
pid file = /var/run/rsyncde.pid //pid文件存放位置
lock file = /var/run/rsync.lock //锁文件存放位置
log file = /var/log/rsyncd.log //日志记录文件 的存放位置
Timeout = 300 //通过该选项可以覆盖客户指定的ip超时时间,通过该选项可以确保rsync服务器
不会永远等待一个崩溃的客户端,超时单位为秒钟,0表示没有超时定义,这也是默认值,
对于匿名rsync服务器来说,一个理想的数字是600
Log format = %t %a %m %f %b
[backup] //这里是认证的模块名,在client端需要指定
#path=/home/source/
path=/data/tmp/samba/share/ //需要做镜像目录
ignore errors //可以忽略一些无关的IO错误
read only = yes //该选项设定是否允许客户上传文件
list = no //不允许列文件
auth users = rsync //认证的用户名
secrets file = /etc/rsyncd.secrets //秘密文件
hosts allow = 10.100.0.198 //允许主机或网段
hosts deny = 0.0.0.0/0 //禁止主机

创建密码文件,并增加用户和密码:

# cat /etc/rsyncd.secrets
rsync:rsync

更改密码文件权限:

# chmod 0600 /etc/rsyncd.secrets
# ll -h /etc/rsyncd.secrets
-rw------- 1 root root 12 May 11 13:27 /etc/rsyncd.secrets

# /usr/bin/rsync --daemon

启动服务默认端口:873

客户端:

客户端就不用启动rsync服务了

创建密码文件,文件名自定义,但内容需要填相标服务授权密码

# cat /etc/rsyncd.secrets
rsync
#列改文件权限
#chmod 0600 /etc/rsyncd.secrets

在客户端去同步服务端的数据,所以要在服务端运行:

rsync -vzrtopg --delete --progress --password-file=/etc/rsyncd.secrets rsync@10.100.0.123::backup /DataBack/SambaBack

参数详解:

v:传输时的进度等信息,z:表示压缩,r:是递归,t:保持文件原有时间,o:保持文件原有属主,P:传输进度,g:保持文件原有用户组
--progress :指显示
--delete:指如果服务器端删除了这一文件,那么客户端也想应把文件删除,保持真正的一致
--password-file=/etc/sysncd.secrets:认证密码
rsync:认证用户
backup:认证模块

写脚本并结合计划任务来定时同步数据:

# cat /data1/sh/rsync_samba.sh
#!/bin/bash
rsync -vzrtopg --delete --progress --password-file=/etc/rsyncd.secrets rsync@10.100.0.123::backup /DataBack/SambaBack
查看定时任务:
* * * cd /data1/sh && ./rsync_samba.sh

rsync 实现文件同步 (重要数据通过rsyncr把数据同步到不同的两台服务器上,这样可以防止服务器的硬盘故障导致数据丢失) 客户端同步时如果要排某个目录的更多相关文章

  1. 对拷 使用scp命令在两台linux上对拷文件或者文件夹

    以前一直是在服务器上tar打包压缩,下载到本地电脑上,再上传到另外一台服务器上,再解压. 其实使用scp命令就可以直接对拷文件或者文件夹了. scp就是secure copy,是用来进行远程文件拷贝的 ...

  2. 使用SyncToy 同步两台机器上的文件夹

    @echo off echo 准备启动同步... net use \\WIN-AJH8QENQQGK "123456" /user:Administrator Z:\SyncToy ...

  3. C# 把本地文件上传到服务器上,和从服务器上下载文件

    方法一.通过Ajax方式上传文件(input file),使用FormData进行Ajax请求 <div  > <input type="file" name=& ...

  4. linux 操作之一 如何在linux将本地数据*.sql文件导入到linux 云服务器上的mysql数据库

    liunx 版本ubuntu 16.4 mysql 版本  5.6 1)准备*.sql文件 (* 是准备导入的sql文件的名字) 2)liunx 远程客户端  SecureCRT 7.0 alt+p ...

  5. AD域服务器|两台DC无法进行复制同步

    注:本文由Colin撰写,版权所有!转载请注明原文地址,谢谢合作! 说明:前段时间公司两台域控出现了一些问题导致数据无法相互进行同步,DC之间也无法进行共享访问,网络用户无法通过计算机名映射的共享访问 ...

  6. 【Linux学习笔记】用nc实现两台主机间的文件传输(不需要输密码)

    通常,可以用scp完成两台主机间的文件传输任务,但在主机间未建立信任关系的情况下,scp每次都需要输入密码,用起来感觉不是很方便,之前这篇笔记介绍过不用输入密码执行脚本或传输文件的方法,但对于一些临时 ...

  7. winform 查看远程服务器上的文件

    解决方案: 1. 在目标服务器上发布webservice,实现文件下载的方法. using System; using System.Collections.Generic; using System ...

  8. ftp上传文件,本地安装了,服务器上也需要在也安装一个ftp

    服务器需要配置FTP服务: 你说的在你自己电脑上安装的只是一个FTP软件,用于连接远程服务器进行上传和下载文件的. 追问 在本地已经安装了,链接的话要在服务器上也安装一个吗? 追答 额,你有FTP服务 ...

  9. sublime中编辑服务器上的文件

    背景:公司项目需要进行构建编译,在服务器上速度比较快,所以需要将sublime和linux中的文件相关联. 参考资料:http://zyan.cc/samba_linux_windows/ 主要有两步 ...

随机推荐

  1. python模块之HTMLParser之穆雪峰的案例(理解其用法原理)

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #python模块之HTMLParser之穆雪峰的案例(理解其用法原理) #http://www.cnblog ...

  2. adb shell dumpsys的使用

    该命令用于打印出当前系统信息,默认打印出设备中所有service的信息,可以在命令后面加指定的service name. 有两种方法可以查看service list: 1. adb shell dum ...

  3. 移植到windows下的iconv

    This is a short memo about installing iconv on Windows host (specifically: Windows 7 SP1 x64). Iconv ...

  4. tensorflow内存溢出问题

    Tensorflow的静态图结构简洁清晰,符合人的思维.虽然编程上略微有些复杂,但是原理很容易看懂. Tensorflow分建图过程和运行图(张量求值)两个阶段,在这两个阶段中都可以定义操作和张量.但 ...

  5. [转]VUE优秀UI组件库合集

    原文链接 随着SPA.前后端分离的技术架构在业界越来越流行,前端的业务复杂度也越来越高,导致前端开发者需要管理的内容,承担的职责越来越多,这一切,使得业界对前端开发方案的思考多了很多,以react.v ...

  6. webpack window 处理图片和其他静态文件

    安装url-loader npm install url-loader --save-dev 配置config文件 {        test: /\.(png|jpg)$/,        load ...

  7. System.Web.HttpValueCollection.ThrowIfMaxHttpCollectionKeysExceeded

    昨天客户跟我说,突然一个页面频繁地报ThrowIfMaxHttpCollectionKeysExceeded这个异常.而且是数据量大的时候报错,数据量小的时候OK. 根据异常的名称也能看得差不多超过了 ...

  8. 【Android】Android如何对APK反编译

    本文笔者粗略的介绍如何利用一些工具,对Android进行反编译,从而得到源码,希望对你有所帮助,笔者的android环境为4.4.2. 1.准备资源. 在开始之前,需要准备三项工具:apktool  ...

  9. 代码管理(三)sourcetree 的使用

    一.SourceTree简介   SourceTree 是 Windows 和Mac OS X 下免费的 Git 和 Hg 客户端,拥有可视化界面,容易上手操作.同时它也是Mercurial和Subv ...

  10. OpenCV 学习笔记03 boundingRect、minAreaRect、minEnclosingCircle、boxPoints、int0、circle、rectangle函数的用法

    函数中的代码是部分代码,详细代码在最后 1 cv2.boundingRect 作用:矩形边框(boundingRect),用于计算图像一系列点的外部矩形边界. cv2.boundingRect(arr ...