rsync同步服务安装配置及脚本使用

Rsync是Unix/Linux下的一款应用软件,利用它可以使多台服务器数据保持同步一致性,第一次同步时 rsync 会复制全部内容,但在下一次只传输修改过的文件。

Rsync 在传输数据的过程中可以实行压缩及解压缩操作,因此可以使用更少的带宽。可以很容易做到保持原来文件的权限、时间、软硬链接等。rsync有两种同步方式,一种基于ssh同步不需要配置,一种需要自身秘钥同步就需要进行文件配置了。以下我采用的是自身秘钥的方式:企业用的居多

  1. RSYNC安装

    实验两台虚拟机:服务端192.168.2.222,客户端192.168.2.183

    便于实验,我这里采用yum安装方式:yum install rsync -y

  2. 我这里自定义rsync配置目录mkdir /home/lijq/.rsync/ -p  ; 创建配置文件添加以下内容vi rsyncd.conf;

    uid = nobody
    gid = nobody
    use chroot = no
    max connections = 30
    pid file = /home/lijq/.rsync/rsyncd.pid
    lock file = /home/lijq/.rsync/rsyncd.lock
    log file = /home/lijq/.rsync/rsyncd.log
    transfer logging = yes
    log format = %t %a %m %f %b
    syslog facility = local3
    timeout = 300
    [test1]
    read only = no
    path = /data/www
    comment = www
    auth users = test
    secrets file = /home/lijq/.rsync/rsync.pas
    hosts allow = 192.168.2.183

  3. cd /home/lijq/.rsync;创建rsync.pas密钥文件test:123456 并给权限chmod 666 rsync.pas
  4. 然后启动服务,我这里是自定义配置路径和端口所有启动命令为下:

    /usr/bin/rsync --daemon --config=/home/lijq/.rsync/rsyncd.conf --port 7001

    使用ps -ef | grep rsync可以查看服务启动情况

  5. 客户端配置,只需要在cd /home/lijq/.rsync/下创建rsync.pas密码文件内容123456并赋予600权限即可
  6. 然后创建服务端的同步目录,上面配置文件定义的是/data/www
  7. 客户端执行rsync   -aP  --delete    [email protected]::test1  /root/lijq    --port=7001 --password-file=/home/lijq/.rsync/rsync.pas
  8. 上面命令是客户端同步服务器文件里面的内容,,/root/lijq为客户端目录可以自己定义,端口是我自己定义的,test1是我服务端定义的同步模块名称
  9. 如果报错@ERROR: auth failed on module test1请检查秘钥配置文件,如果报错:rsync: failed to connect to 192.168.2.222: No route to host (113)请检查防火墙和selinux,博主深受其害
  10. 同步命令执行后,会发现,服务器上的/data/www/下面的文件都同步到了客户端/root/lijq下面了,,done

二.上面的客户端执行的命令同步是服务器上的目录文件同步到客户端来相当于备份,而企业中很多都是从客户端更新数据到服务端故此:在客户端可以执行下列命令就好了

/usr/bin/rsync -avzP  --progress --delete --password-file=rsyncd1.pas --port=7001 /root/lijq/ [email protected]::test1     rsyncd1.pas是我在当前目录创建的一个秘钥文件,,也可以写成之前的那个路径。

如果报错rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1039) [sender=3.0.6]请检查服务端目录权限其他用户要有写的权限哦,done

脚本实现同步:这里的脚本是客户端数据同步到服务端的,其他的可以自己定义:

 #!/bin/bash
#use for : sh 33.sh test server
SYSUSER=test
export MOKUAI=test1
export PORT=7001
SRC_DIR=/root/lijq/
SERVERIP=192.168.2.222
SERVERNO=$1
case "$2" in
test)
echo ${rsyncsource%/*}
;;
server)
/usr/bin/rsync -avzP --progress --delete --password-file=rsyncd1.pas --port=${PORT $SRC_DIR [email protected]$SERVERIP::$MOKUA
I
;;
esac

done

后续研究持续更新

时间: 2024-08-05 17:20:29

rsync同步服务安装配置及脚本使用的相关文章

Rsync+Sersync服务安装配置

环境要求: 准备两台服务器(VM) 两个IP 1.A服务器=主服务器===>安装软件(rsync+sersync) 2.B服务器=从服务器===>安装软件(rsync) ip划分 A服务器:192.168.1.200 B服务器:192.168.1.201 操作系统: [[email protected] ~]# hostnamectl Static hostname: localhost.localdomain Icon name: computer-vm Chassis: vm Machin

rsync同步服务

大规模集群搭建--rsync同步服务基本思路:在服务端开启demo守护进程 客户端使用命令行的方式进行推送服务 服务器端配置:一.安装rsync软件,默认系统自带#yum -y install rsync#rpm -qa rsync 二.修改配置文件:/etc/rsyncd.cof#vim /etc/rsyncd.cofuid = rsync #进程对应的用户(远端的命令使用rsync访问共享目录)gid = rsync #用户组use chroot = no #安全相关max connecti

ubuntu 下telnet服务安装配置

1. sudo apt-get install xinetd telnetd 2. sudo vim /etc/xinetd.conf并加入以下内容进行下一步的Ubuntu Linux telnet设置: # Simple configuration file for xinetd # # Some defaults, and include /etc/xinetd.d/ defaults { # Please note that you need a log_type line to be a

web服务安装配置

本文主要是以 CentOS 6系列为操作系统,来安装配置web服务,并实现虚拟用户,https,和基本的用户认证等相关内容. 写在前面: 操作系统: CentOS 6.5 服务器的IP: 172.16.10.9 httpd的版本:httpd-2.2.15 系列 SElINUX状态:disabled 下面开始安装配置旅程: 一.web的安装配置 1.安装:yum install httpd  mod_ssl -y mod_ssl 是实现 https 协议时所依赖的包 2.配置文件的相关说明: 配置

Hadoop系列之zookeeper(分布式协调服务)安装配置

Hadoop系列之zookeeper(分布式协调服务)安装配置 1.安装cd /root/softtar zxvf zookeeper-3.4.6.tar.gzmv zookeeper-3.4.6 /usr/local/hadoop/zookeeper2.修改配置文件mkdir -p /data/zookeeper/data //3个节点都需要创建此目录cd /usr/local/hadoop/zookeeper/confcp zoo_sample.cfg zoo.cfg#vim zoo.cfg

详解“FTP文件传输服务”安装配置实例

"FTP文件传输服务"安装配置实例 家住海边喜欢浪:zhang789.blog.51cto.com 目录 简介 ftp工作原理 常见的FTP服务 Vsftpd服务器的安装 Vsftpd.conf配置文件详解 配置FTP服务器实例 实例:配置匿名用户 实例:配置本地用户登录 实例:配置虚拟用户登录(MySQL认证) 实例:控制用户登录 实例:设置欢迎信息 分析vsftpd日志管理 FTP服务器配置与管理 简介 FTP 是File Transfer Protocol(文件传输协议)的英文简

Rsyslog日志服务安装配置

rsyslog服务端配置  centos6.4 x64系统  系统自带rsyslog 5.8版本 rsyslog 是一个 syslogd 的多线程增强版. 现在Fedora和Ubuntu, rhel6默认的日志系统都是rsyslog了 rsyslog负责写入日志, logrotate负责备份和删除旧日志, 以及更新日志文件 ################################### #首先部署好lamp环境,详情见lamp安装文档 #更新系统时间   rsyslog-mysql是rs

rsync同步服务配置手记

Rsync在推送或抓取数据时,在rsync客户端会出现性能问题, 负载比较大且数据量比较大的生产环境要注意这一点. 本文只是个人平时配置示例,可以简单修改后用于实际环境使用,rsync不仅可以实现服务器间的复制,对于本地目录的同步也相当方便. 1. linux平台rsync服务配置示例 (1) 客户端同步脚本 #!/bin/bash   # author: koumm    # desc: backup for /data/ to 10    # date: 20xx-xx-xx    # ve

实现Rsync同步Nginx前端配置

近期,由于我们的阿里前端服务器频频受到恶意的流量攻击,导致前端NGINX进入黑洞而无法正常访问公司网站. 按之前的预计方法,采用加速乐及备用全配置前端的作法,将恶意短时流量攻击的损失时间降到最短.现将C这台机用作全配置的NGINX前端,A和B前端的任何NGINX配置都会通过RSYNC同步到C这台机器上. 部署的思路如下: 规范A和B的nginx配置目录(用include conf.d/*来实现),在这两个服务器上配置一个rsync的服务端进程,然后,在C上每两分钟运行rsync同步进程,及时的将