rsync服务

简介:

rsync 工具

    说明:rsync 和scp 支持远程备份,rsync 支持增量拷贝

    类似工具scp

    说明:A和B主机需安装openssh-clients

    命令 scp ./ilanni.tar.gz    root@192.168.1.102:/ks


一、 安装工具

     yum install -y rsync 


二、ssh连接方式

     说明:源主机和目标主机需安装:openssh-clients


     1)拷贝到远程

     说明:指定端口;不写用户名则自动检测远程主机当前的用户

     rsync -e "ssh -p 22" -zvPz  111/  root@172.16.115.202:/tmp/111/


     2)远程拷贝回来

     rsync -e "ssh -p 22" -zvPz root@172.16.115.202:/tmp/111/ ./111/

     注:拷贝整个目录以及其下的文件时,需加/,否则只是拷贝了目录而没有文件


    用法说明:

    -a  等同于  -rlptgoD

    -D 设备文件相关,很少接触

    -o owner,即属主

    -g group,即属组

    -t 时间,即3个time

    -p 读写权限,同步前后不会变化

    -r 归档,针对同步目录作用

    -l 同步软链接文件,如果没有源文件,则为废文件

    -L 同步软链接的源文件

    -v 可视化

    --delete 删除A机上的老文件,则B的老文件也会删除

    --exclude=PATTERN ,等号后面跟文件名 同步时,排除某些文件和目录,过滤掉

    -P 大P显示同步进度,比v显示的东西多,和--process一样

    -u 等同于--update 避免把目标B文件上的新数据(可能修改之后和A不同了)覆盖掉

    -z 压缩同步,减少带宽

   --no-OPTION 这个表示关闭-rlptgoD中的某一个例如 -a--no-l 等同于-rptgoD

    --progress 在同步的过程中可以看到同步的过程状态,比如统计要同步的文件数量、同步的文件传输速度等等


三、后台服务方式

  说明:daemon后台服务的方式,需写一个配置文件,放在etc下,通过命令启动,监听一个端口,然后客户端和服务端通信


【服务端配置】(172.16.115.202)

1. 编辑配置文件vim /etc/rsyncd.conf

    说明:huangzhenping1模块不需要认证;配置文件修改之后不需要重启,及时生效

    添加内容:

    port=8730  # 端口

    log file=/var/log/rsync.log # log日志文件

    pid file=/var/run/rsync.pid # 每个进程都有个pid文件

   [huangzhenping] # 模块名

   path=/tmp/rsync # 模块对应的目录,用于存取文件,需要创建

   use chroot=yes # 限定模块目录下软链接时不能同步其他目录的文件,yes或ture为真

   max connections=4 # 最大连接数

   read only=no # 登录之后是否只读(如果推送,则需要写权限)

   list=yes # 是否允许list模块名

   uid=root # 文件属主属组

   gid=root

   auth users=huangzhenping # 用户认证

   secrets file=/etc/rs.passwd # 认证密码文件

   hosts allow=172.16.115.202  172.16.115.162 # 允许主机


  [huangzhenping1]

  path=/tmp/rsync123

  use chroot=yes

  max connections=4

  read only=no

  list=yes

  uid=root

  gid=root

  hosts allow=172.16.115.202


2. 启动,查看端口,查看日志

   rsync --daemon

   netstat -lnp|grep rsync

   cat /var/log/rsync.log


3. 创建目录和文件

   mkdir /tmp/rsync

   mkdir /tmp/rsync123


4. 创建密码文件vim /etc/rs.passwd,修改权限为600,只允许root读写

    内容:

    huangzhenping:123456   #左边为用户名,右边为对应密码

    授权:

    chmod 600 /etc/rs.passwd


【客户端同步测试】(172.16.115.157)

  说明:双冒号默认以873端口去访问连接


1. 在客户端查看服务端模块名,同步测试

    说明:由list=yes|no决定

    rsync --port 8730 172.16.115.202::

 wKiom1jHYUqxphPWAAAKYbFMZ5k096.png


    语法:

    rsync -avPz --port 8730 /tmp huangzhenping@172.16.115.202::huangzhenping/

    说明:需要服务端设置的用户名和密码,以及模块名

 wKioL1jHYVzQpLxxAAAlUFJloLc342.png



2. 客户端指定密码文件,免密码同步

    1)先查询指定格式

      rsync --help|grep passw

 wKioL1jHYWzDzUfmAAALsPJuzjs054.png



    2)新建密码文件

     说明:一个文件一个密码,只需写密码,授权400

     vim /etc/rsync_pass.txt

     chmod 400  /etc/rsync_pass.txt

 wKioL1jHYXjwtxQPAAAHYFCHJJE075.png



    3)同步时,指定密码文件即可

     rsync -avPz --port 8730 --password-file=/etc/rsync_pass.txt huangzhenping@172.16.115.202::huangzhenping/ /tmp/

 wKiom1jHYYSzYTR7AAAtgr3EYkA139.png










本文转自 huangzp168 51CTO博客,原文链接:http://blog.51cto.com/huangzp/1906257,如需转载请自行联系原作者
目录
相关文章
|
算法 安全 Shell
rsync使用详解
1、什么是Rsync  Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。Rsync使用所谓的“Rsync算法”来使本地和远 程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。
1177 0
|
数据安全/隐私保护 网络协议 算法
|
算法 数据安全/隐私保护
|
网络安全 Shell 开发工具