rsync 配置
1.安装rsync和配置文件
root@localhost ~]# yum -y install rsync #安装rsync服务 #CentOS 默认以 xinetd 方式运行 rsync 服务。rsync 的 xinetd 配置文件在 /etc/xinetd.d/rsync。
[root@localhost ~]# vim /etc/xinetd.d/rsync
service rsync
{
disable = yes
flags = IPv6
socket_type = stream
wait = no #yes改为no
user = root
server = /usr/bin/rsync
server_args = --daemon #在后面添加 rsync 的服务选项
log_on_failure += USERID
}[root@localhost ~]# chkconfig rsync on #添加开机启动1.配置rsyncd.conf主配置文件:
[root@localhost ~]# mkdir /etc/rsyncd #创建独立文件夹创建rsync服务的文件
[root@localhost ~]# touch /etc/rsyncd/rsyncd.conf #创建主配置文件
[root@localhost ~]# ln -s /etc/rsyncd/rsyncd.conf /etc/rsyncd.conf #创建软连接到/etc/下
[root@localhost var]# vim /etc/rsyncd.conf
uid = root #以什么用户启动
gid = root #以什么组启动
use chroot = no #若为 true,则 rsync 在传输文件之前首先 chroot 到 path 参数所指定的目录下。这样做的原因是实现额外的安全防护,但是缺点是需要 root 权限,并且不能备份指向 path 外部的符号连接所指向的目录文件。
max connections = 2 #指定该模块的最大并发连接数量以保护服务器,超过限制的连接请求将被告知随后再试。
motd file = /etc/rsyncd.motd #指定一个消息文件,当客户连接服务器时该文件的内容显示给客户,相当于欢迎界面
strict modes = yes #指定是否监测口令文件的权限。若为 true 则口令文件只能被 rsync 服务器运行身份的用户访问,其他任何用户不可以访问该文件。
port = 873 #指定 rsync 守护进程监听的端口号。 由 xinetd 运行时将忽略此参数,使用命令行上的–port 选项替代。
pid file = /var/run/rsyncd.pid #rsync 的守护进程将其 PID 写入指定的文件。
lock file = /var/run/rsync.lock #指定支持 max connections 参数的锁文件。
log file = /var/log/rsyncd.log #指定 rsync 守护进程的日志文件,而不将日志发送给 syslog。
read only = yes #指定是否允许客户上传文件。若为 true 则不允许上传;若为 false 并且服务器目录也具有读写权限则允许上传。
list = no #指定当客户请求列出可以使用的模块列表时,该模块是否应该被列出。如果设置该选项为 false,可以创建隐藏的模块
hosts allow = 192.168.199.0/24 #同意访问客户机hosts deny = * #拒绝访问客户机
[test] # 模块名字,自己命名
path = /test #指定当前模块在 rsync 服务器上的同步路径,该参数是必须指定的。
comment = test #给模块指定一个描述,该描述连同模块名在客户连接得到模块列表时显示给客户。
ignore errors #指定在 rsync 服务器上运行 delete 操作时是否忽略 I/O 错误。一般来说 rsync 在出现 I/O 错误时将将跳过 –delete 操作,以防止因为暂时的资源不足或其它 I/O 错误导致的严重问题。
read only = no #指定是否允许客户上传文件。若为 true 则不允许上传;若为 false 并且服务器目录也具有读写权限则允许上传。
write only = no #指定是否允许客户下载文件。若为 true 则不允许下载;若为 false 并且服务器目录也具有读权限则允许下载。
list = yes #指定当客户请求列出可以使用的模块列表时,该模块是否应该被列出。如果设置该选项为 false,可以创建隐藏的模块。
auth users = root #指定由空格或逗号分隔的用户名列表,只有这些用户才允许连接该模块。secrets file = /etc/rsyncd.passwd #指定一个 rsync 认证口令文件。只有在 auth users 被定义时,该文件才起作用。
[etc]
path = /etc
comment = etc
ignore errors
read only = no
write only = no
list = yes
auth users = root
secrets file = /etc/rsyncd.passwd
2.配置启动文件
[root@localhost rsyncd]# vim rsyncd.passwd #编辑认证文件
root:123123 #用户名:密码。注意这个不是系统用户,只是rsync用户。所以不用useradd。
[root@localhost rsyncd]# chmod 600 rsyncd.passwd #修改认证文件权限为600,否则报错。
[root@localhost rsyncd]# vim rsyncd.motd#编辑欢迎文件,修改权限为600.
+++++++++++++++++++++++++++++++++++++++++++++++
Welcome to my rsync service!
+++++++++++++++++++++++++++++++++++++++++++++++ [root@localhost ~]# /usr/bin/rsync –daemon #启动rsync
[root@localhost ~]# netstat -anp | grep 873 #查看是否启动
tcp 0 0 :::873 :::* LISTEN 5244/xinetd
[root@localhost ~]# iptables -A INPUT -p tcp --dport 873 -j ACCEPT #添加iptables开放873端口
[root@localhost rsyncd]# rsync --list-only root@192.168.199.122:: #显示列表
+++++++++++++++++++++++++++++++++++++++++++++++
Welcome to my rsync service!
+++++++++++++++++++++++++++++++++++++++++++++++
test test
etc etc
3.添加开机启动
[root@localhost test]# vim /etc/rc.local #编辑
/usr/bin/rsync –daemon #添加
4.参数场景配置
rsync中的参数
-a, --archive 归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD
-r 是递归
-l 是链接文件,意思是拷贝链接文件;
-p 表示保持文件原有权限;-t 保持文件原有时间;-g 保持文件原有用户组;-o 保持文件原有属主;-D 相当于块设备文件;
-z 传输时压缩;
-P 传输进度;
-v 传输时的进度等信息,和-P有点关系,自己试试。可以看文档;
-e ssh的参数建立起加密的连接。
-u只进行更新,防止本地新文件被重写,注意两者机器的时钟的同时
--progress是指显示出详细的进度情况
--delete是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致
--password-file=/password/path/file来指定密码文件,这样就可以在脚本中使用而无需交互式地输入验证密码了,这里需要注意的是这份密码文件权限属性要设得只有属主可读。
方法1:
[root@localhost test]# rsync -avzP root@192.168.199.133::test /test #从远程rsync服务器中拷贝文件到本地机。当SRC路径信息包含"::"分隔符时启动该模式
+++++++++++++++++++++++++++++++++++++++++++++++
Welcome to my rsync service!
+++++++++++++++++++++++++++++++++++++++++++++++
Password: 方法2
[root@localhost test]# rsync -avzP /test root@192.168.199.133::test #从本地机器拷贝文件到远程rsync服务器中。当DST路径信息包含"::"分隔符时启动该模式。
+++++++++++++++++++++++++++++++++++++++++++++++
Welcome to my rsync service!
+++++++++++++++++++++++++++++++++++++++++++++++
Password: 方法3 免密备份 客户端定义认证文件:
[root@localhost test]# vim /etc/rsyncd/rsyncd.passwd
123123 #直接指定密码不用指定用户名 [root@localhost test]# rsync -vzrtopg root@192.168.199.133::test /test --password-file=/etc/rsyncd/rsyncd.passwd
+++++++++++++++++++++++++++++++++++++++++++++++
Welcome to my rsync service!
+++++++++++++++++++++++++++++++++++++++++++++++
receiving incremental file list
skipping non-regular file "back/var/mail"
skipping non-regular file "back/var/lib/gdm/.pulse/997d870c33d694e1e7465ed300000012-runtime"
back/var/cache/yum/x86_64/6/updates/
back/var/cache/yum/x86_64/6/updates/78c4a5d42daa4bba56936a0d2d6b0bd8efc776617ef029f207d4d929ebe08541-other.sqlite
方法4 备份至本地
[root@localhost test]# rsync -vzrtopg --progress /test/ /tmp/test/
定义定时备份机制:
[root@localhost test]# crontab -e
00 20 * * * /usr/bin/rsync -vzrtopg --progress /test/ /tmp/test/ #每天晚上8点
rsync 配置的更多相关文章
- Linux的rsync 配置,用于服务器之间远程传大量的数据
[教程主题]:rsync [课程录制]: 创E [主要内容] [1] rsync介绍 Rsync(Remote Synchronize) 是一个远程资料同步工具,可通过LAN/WAN快速同步多台主机, ...
- lsyncd+rsync配置图片资源双向同步
需求:为保证国内外图片加载速度,国内请求上传图片资源地址阿里云oss,国外请求上传图片资源地址aws s3,为保证图片资源的一致性,需定时进行oss和s3图片双向同步 调研方案:由于之前配置过inot ...
- rsync配置和同步数据
rsync的搭建配置1.环境和配置文件 rsyncd.conf(主配置文件) rsyncd.secrets(密码文件) pc1:192.168.0.1,rsync的服务器,配置rsyncd.conf文 ...
- Linux rsync配置用于服务器之间传输大量的数据
Linux的rsync 配置,用于服务器之间远程传大量的数据 [教程主题]:rsync [课程录制]: 创E [主要内容] [1] rsync介绍 Rsync(Remote Synchronize ...
- rsync配置两台服务器之间的文件备份(同步)
rsync配置两台服务器之间的文件备份(同步) 前情提要 环境: 192.168.1.2 主服务器 centos 7.7 192.168.1.3 备份服务器 centos 7.7 rsync 安装(两 ...
- rsync配置中的auth error,一个隐秘的错误
我们都知道rsync是linux自带的功能强大的文件同步协议. 为了做免密码文件同步,所以,有多种配置.但是种种配置中,可能会遇到一个让人很纠结的问题,那就是安全认证错误的问题! 这个配置,是基于rs ...
- rsync配置
一.rsync 简介 Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件,也可以使用 Rsync 同步本地硬盘中的不同目录. Rsy ...
- Linux上rsync配置
一.服务器端配置1.rsyncd.conf文件说明uid = rsync #用户,用来控制用户访问模块目录的读写权限gid = rsync #组,用来控制组访问模块目录的读写权限use ...
- rsync配置及优化
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...
随机推荐
- mssql 动态行转列。
)) ,'张三' ,'李四' ,'王五' select * from #a a b ----------- ---- 张三 李四 王五 ( 行受影响) --行转列,步骤:''+张三+],[+王五+], ...
- NHibernate系列文章六:NHibernate数据类型映射
摘要 NHibernate支持所有的数据库数据类型. 以SQL Server数据库为例,下表是NHibernate支持的SQL Server数据库最常见的数据类型对照表. 第一列是NHibernate ...
- java基础知识点复习
第一天: JRE.JDK是什么? Jre java运行环境.Jre = java虚拟机+核心类库(辅助java运行的文件) Jdk:java开发工具集jdk = jre+java的开发工具 2. 配置 ...
- 【转载】理解GL_TRIANGLE_STRIP等绘制三角形序列的三种方式
GL_TRIANGLE_STRIP绘制三角形方式很多时候令人疑惑,在这里对其运作机理进行解释. 一般情况下有三种绘制一系列三角形的方式,分别是GL_TRIANGLES.GL_TRIANGLE_STRI ...
- MySQL表分区技术
MySQL表分区技术 MySQL有4种分区类型: 1.RANGE 分区 - 连续区间的分区 - 基于属于一个给定连续区间的列值,把多行分配给分区: 2.LIST 分区 - 离散区间的分区 - 类似于按 ...
- .NET高级工程师面试题之SQL篇
1 题目 这确实是一个真实的面试题,琢磨一下吧!知识不用,就会丢掉,我太依赖各种框架和dll了,已经忘记了最基本的东西.有多久没有写过SQL了,我已经不记得了. 已知表信息如下: Department ...
- Linux内核分析第一周学习总结:计算机是如何工作的?
韩玉琪 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一.冯诺依曼体系 ...
- servletconfig和servletContext的区别
1.servletConfig: 在Servlet的配置文件中,可以使用一个或多个<init-param>标签为servlet配置一些初始化参数.(配置在某个servlet标签或者整个we ...
- Great StackOverflow questions
1. diffenece between MVC and MVP http://stackoverflow.com/questions/2056/what-are-mvp-and-mvc-and-wh ...
- c#:未将对象引用设置到对象的实例--可能出现的问题总结(转)
1.c#:未将对象引用设置到对象的实例--可能出现的问题总结(转):http://www.cnblogs.com/KeenLeung/archive/2013/06/23/3150578.html