• rsync命令详解


    介绍

    rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。 rsync是一个功能非常强大的工具,其命令也有很多功能特色选项,我们下面就对它的选项一一进行分析说明。

    常用场景

    无密码同步

    服务端:vim /etc/rsyncd.conf

    复制代码
    #This is the rsync daemon configuration 
    
    #global settings 
    pid file = /var/run/rsyncd.pid
    port = 873
    lock file = /var/run/rsyncd.lock
    log file = /var/log/rsync.log
    gid = root
    uid = root
    
    #module settings 
    [share_data]
    path = /web/rsync/share_data
    use chroot = no
    max connections = 15
    read only = yes
    write only = no
    list = no
    ignore errors = yes
    timeout = 120
    复制代码
    /usr/bin/rsync --daemon
    mkdir -p /web/rsync/share_data

    客户端

    rsync -avz --progress root@192.168.1.98::share_data /home/hadoop/share_data

     限制流量同步

    rsync -avz --bwlimit=50 --progress root@192.168.1.98::share_data /home/hadoop/share_data

    有密码同步

    服务端  

    vim /etc/rsyncd.conf

    复制代码
    #This is the rsync daemon configuration 
    
    #global settings 
    pid file = /var/run/rsyncd.pid
    port = 873
    lock file = /var/run/rsyncd.lock
    log file = /var/log/rsync.log
    gid = root
    uid = root
    
    #module settings 
    [auth_data]
    path = /web/rsync/auth_data
    use chroot = no
    max connections = 15
    read only = yes
    write only = no
    list = no
    ignore errors = yes
    timeout = 120
    auth users = hadoop
    secrets file = /etc/rsyncd.passwd
    复制代码
    echo "hadoop:password123" > /etc/rsyncd.passwd 
    chmod 600 /etc/rsyncd.passwd
    mkdir -p /web/rsync/auth_data

    客户端

    echo "password123" > /home/hadoop/rsyncd.passwd 
    chmod 600 /home/hadoop/rsyncd.passwd 
    rsync -avz --progress  --password-file=/home/hadoop/rsyncd.passwd  hadoop@192.168.1.98::auth_data /home/hadoop/auth_data

    或者是

    export RSYNC_PASSWORD="password123"
    rsync -avz --progress hadoop@192.168.1.98::auth_data /home/hadoop/auth_data

    写入同步

    服务端

    vim /etc/rsyncd.conf

    复制代码
    #global settings 
    pid file = /var/run/rsyncd.pid
    port = 873
    lock file = /var/run/rsyncd.lock
    log file = /var/log/rsync.log
    gid = root
    uid = root
    
    #module settings 
    [write_data]
    path = /web/rsync/write_data
    use chroot = no
    max connections = 15
    read only = no
    list = no
    ignore errors = yes
    timeout = 120
    auth users = hadoop
    secrets file = /etc/rsyncd.passwd
    复制代码
    mkdir -p /web/rsync/write_data

    客户端

    echo "123" > /home/hadoop/write_file
    export RSYNC_PASSWORD="password123"
    rsync -avz --progress --delete /home/hadoop/write_file hadoop@192.168.1.98::write_data 

    限定IP或者网段

    复制代码
    #global settings 
    pid file = /var/run/rsyncd.pid
    port = 873
    lock file = /var/run/rsyncd.lock
    log file = /var/log/rsync.log
    gid = root
    uid = root
    
    #module settings 
    [write_data]
    path = /web/rsync/write_data
    use chroot = no
    max connections = 15
    read only = no
    list = no
    ignore errors = yes
    timeout = 120
    auth users = hadoop
    secrets file = /etc/rsyncd.passwd
    hosts allow = 192.168.2.32  192.168.1.0/24
    复制代码

    常见场景例子

    指定端口

    rsync -avz --port=8081 --progress /home/hadoop/auth_data hadoop@192.168.1.98::auth_data 

    限速

    rsync --bwlimit=100 -avz --progress /home/hadoop/auth_data hadoop@192.168.1.98::auth_data 

    限速100kb/s同步数据

    Rsync通过SSH传输

    rsync -e "ssh -p 22"  --progress /home/hadoop/auth_data hadoop@192.168.1.98::auth_data 

    更多命令参考 

    客户端 https://download.samba.org/pub/rsync/rsync.html

    服务端 https://download.samba.org/pub/rsync/rsyncd.conf.html

  • 相关阅读:
    python3.x学习笔记2018-02-05更新
    网络安全学习资源整理2018-02-02更新
    隔行变色效果
    自制滚动条
    关于ico图标
    CSS实现标题/段落省略效果的三剑客
    第三章(循环) 编程题 2
    第三章(循环) 编程题
    python基础03--基本数据类型(字符串)
    python基础02--运算符与基本数据类型(数字)
  • 原文地址:https://www.cnblogs.com/jiangzhaowei/p/8185432.html
Copyright © 2020-2023  润新知