Linux rsync 两个目录镜像备份
rsync安装篇
rsync是一款配置简单,功能全面的安全备份软件,具体的功能介绍可以参考手册。这里和大家分享一下rsync在CentOS下的部署。
1、安装rsync,并通过xinetd管理rsync
yum install rsync xinetd -y
2、修改/etc/xinetd.d/rsync文件,使其随xinetd启动而启动
vim /etc/xinetd.d/rsync
......将disable = yes 修改为 disable = no
disable = no
3、修改防火墙策略,允许873端口(tcp/udp)
#或者使用iptables命令
iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 873 -j ACCEPT
iptables -I INPUT -p udp -m state --state NEW -m udp --dport 873 -j ACCEPT
service iptables save
service iptables restart
4、建立rsync的配置文件
# vim /etc/rsyncd.conf 没有这个文件的话直接建立
......
secrets file = /etc/rsyncd.secrets 指定允许的用户和用户密码
motd file = /etc/rsyncd.motd 客户端连接上来时显示的欢迎信息的存放文件www.linuxidc.com
read only = no 是否只读
list = yes 是否允许客户端能够列出备份服务器上的文件
uid = root 指定uid
gid = wheel 指定gid
hosts allow = 192.168.1.100 192.168.1.200 允许使用备份服务器的客户端列表,根据实际环境列出
max connections = 100 同时的最大连接数
log file = /var/log/rsyncd.log 日志文件位置
pid file = /var/run/rsyncd.pid 进程的pid存放文件位置
lock file = /var/run/rsync.lock lock文件位置
####上面的配置是全局的,下面的段会继承上面设定的属性####
[mongobak] 建立一个备份名,客户端通过该名称指定具体的备份位置
path = /mongobak 指定备份文件存放的目录位置
auth users = test 允许那些用户,这里的用户test的信息存放在/etc/rsyncd.secrets
这样一个简单实用的配置就好了。
5、建立/etc/rsyncd.secrets文件
#vim /etc/rsyncd.secrets
......
test:rsync-7-elevEn 格式 用户名:密码 该用户不要求是系统用户
rsyncd.secrets文件的权限要设定为600
.....
#chmod 600 /etc/rsyncd.secrets
6、建立连接到服务器的客户端看到的欢迎信息文件/etc/rsyncd.motd
#vim /etc/rsyncd.motd
......
Welcome to Window Server 2003 IIS
......
#这里的信息根据实际填写
7、启动rsync
#启动
/etc/init.d/xinetd restart
#查看873端口是否起来
netstat -an | grep 873
如果rsync启动成功的话可以看到873端口已经在监听了。
8.建立ssh无密码登陆
rsync可以对两个目录进行镜像(mirror),算是一个非常快速的备份工具!简单的命令语法为:
rsync -av 源目录 目标目录
rsync -av /home /backupdata/
还需要备份到另外一台机器:
scp 即可
ssh端口更改后rsync的用法
rsync有两种常用的认证方式,一种为rsync-daemon方式,另外一种则是ssh。
在一些场合,使用rsync-daemon方式会比较缺乏灵活性,ssh方式则成为首选。但是今天实际操作的时候发现当远端服务器的ssh默认端口被修改后,rsync时找不到一个合适的方法来输入对方ssh服务端口号。
在查看官方文档后,找到一种方法,即使用-e参数。
-e参数的作用是可以使用户自由选择欲使用的shell程序来连接远端服务器,当然也可以设置成使用默认的ssh来连接,但是这样我们就可以加入ssh的参数了。
具体语句写法如下:
- rsync -e 'ssh -p 1234' username@hostname:SourceFile DestFile
Linux rsync 两个目录镜像备份的更多相关文章
- rsync Linux系统下的数据镜像备份工具
rsync是Linux系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync.rsync支持大多数的类Unix系统,无论是Linux.Solaris还是BSD上都经过了良好的 ...
- Linux下快速比较两个目录的不同
曾多次想要在Linux下比较目录a和目录b中文件列表的差别,然后对目录a比目录b中多出的文件.少掉的文件分别做处理.但是,在网上搜索了多次也都没找到能直接处理好的工具. 所以想了很多不少方法,自我感觉 ...
- Linux实现ftp账号同时访问两个目录方法
在做项目时,客户需要FTP同时访问两个目录,要清楚,在建FTP时,都是一个用户对应一个目录,当FTP用户登录后,就只访问当前目录,如果需要访问到其他目录,得另想办法.刚开始以为使用链接可以实现这个功能 ...
- Linux 两个目录浅对比拷贝
对比两个目录内容,然后拷贝! #!/usr/bin/python# -*-coding:utf-8 -*-import osimport sysimport shutildef get_dir_con ...
- Linux rsync 命令详解
服务器之间常常要保持些文件或目录的一致,比如一些大的软件下载网站,它们通常使用多台服务器来提供下载服务.当一台服务器上的文件更新后,其它的服务器 也需要更新,而且 在更新的时候应该是只对新增或是修改过 ...
- linux rsync实时同步
rsync同步 同步与复制的差异:复制:完全拷贝源到目标同步:增量拷贝,只传输变化过的数据 同步操作:remote sync 远程同步支持本地复制,或与其他ssh,rsync主机同步.官方网站:htt ...
- linux rsync 实际应用
linux rsync 实际应用 一.rsync的概述 rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync.rsync是Linux系统下的文件同步和 ...
- Linux rsync 命令学习
Rsync命令和cp命令很像,但是功能似乎更加复杂点,主要用来备份数据.看了网上一堆介绍的文章,感觉不是很通俗易懂.下面按照我的理解,做一些笔记: 同步方式 之前接触过一些同步软件,例如坚果云.百度云 ...
- linux rsync同步工具
linux rsync同步工具 1.rsync介绍rsync是一款开源的.快速的.多功能的.可实现全量及增量的本地或远程数据同步备份的优秀工具.rsync软件适用于unix/linux/windows ...
随机推荐
- PHP中使用CURL之php curl详细解析
在正式讲怎么用之前啊,先提一句,你得先在你的PHP环境中安装和启用curl模块,具体方式我就不讲了,不同系统不同安装方式,可以google查一下,或者查阅PHP官方的文档,还挺简单的. 1. 拿来先试 ...
- Oracle ctl模版
将txt数据装载到数据库 数据无”” LOAD DATA CHARACTER-SET ZHS16GBK truncate into table a FIELDS TERMINATED BY ‘,’ T ...
- Spring源码学习-容器BeanFactory(四) BeanDefinition的创建-自定义标签的解析.md
写在前面 上文Spring源码学习-容器BeanFactory(三) BeanDefinition的创建-解析Spring的默认标签对Spring默认标签的解析做了详解,在xml元素的解析中,Spri ...
- 你不知道的JS之作用域和闭包 附录
原文:你不知道的js系列 A 动态作用域 动态作用域 是和 JavaScript中的词法作用域 对立的概念. 动态作用域和 JavaScript 中的另外一个机制 (this)很相似. 词法作用域是 ...
- Vue 项目: npm run dev 报错 webpack-dev-server
从码云上下载vue项目,运行npm run dev 时报错: > webpack-dev-server --inline --progress --config build/webpack.de ...
- Mybatis Mapper文件中的一小坑
前几天来一需求,实现过程中需要修改一个底层的查询接口,具体修改就是在where中添加一个条件,由于这个底层SQL使用的地方太多,所以就想着是用if加一标识符做个判断,传一个只有我会使用的参数,然后动态 ...
- 实验三:分别用for,while;do-while循坏语句以及递归的方法计算n!,并输出算式。
源代码: package jiecheng;import java.util.Scanner;public class JieCheng {public static void main(String ...
- Docker的基本概念
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何 ...
- Three.js学习笔记01
1.四大组件: 场景:场景是所有物体的容器 var scene = new THREE.Scene(); 相机: 正投影相机:远处的和近处的是一样大 THREE.OrthographicCamera ...
- Java作业十三(2017-11-20)
/*使用一位数组解决 1 1 2 3 5 8 13 数列问题 斐波纳契数列 Fibonacci*/ package cn.GM; public class array { public static ...