zoukankan      html  css  js  c++  java
  • 拷贝文件

    scp全量copy
    rsync增量copy

    一、SCP:

    推方式:

    scp -P52113 /etc/hosts root@172.16.1.41:/data   #大P是更改端口

    scp -P52113 -rp /etc/hosts root@172.16.1.41:/data   #拷贝目录并保持文件属性

    拉方式:

    #将远端服务器172.16.1.31下的/etc/hosts文件拷贝到本地

    scp -P52113 -rp  root@172.16.1.31:/etc/hosts  ./

    二、 rsync

    参数:

    https://www.cnblogs.com/subsir/articles/2565373.html

    两台copy的机器都要安装
    yum install -y rsync
    -a 归档copy,增量copy
    -v 看过程

    -W, --whole-file 拷贝文件,不进行增量检测

    -z  传输过程压缩

    --exclude 用来排除那些不希望传输的文件
    --delete 删除那些DST中SRC没有的文件

    -e, --rsh=COMMAND 指定使用rsh、ssh方式进行数据同步

    远程拷贝:

    推:

    #把/opt目录拷贝到10.0.0.31的/tmp下.

    rsync  -avz  /opt  root@10.0.0.31:/tmp/

    rsync -av /kkb/soft/  node02:/kkb/soft/

    pull:

    rsync -avz root@10.0.0.31:/tmp/  /opt/

    rsync -azuq -e ssh root@10.52.12.116:/root/airflow/logs/ /root/airflow/logs/ --exclude 'scheduler'  --exclude 'scheduler_failover'

    #增量备份:
    rsync -avW --progress ./zos-release --exclude=.git zosroot@54.95.72.110:~/
    rsync -avW --progress ./test zosroot@13.59.30.234:~/

    例子:

    1/ 集群之间节点间文件同步

    mkdir /home/username/bin

    cd /home/username/bin

    chmod 777 xsync

    vim xsync

    #!/bin/bash
    #1 获取输入参数个数,如果没有参数,直接退出
    pcount=$#
    if ((pcount==0)); then
    echo no args;
    exit;
    fi
    
    #2 获取文件名称
    p1=$1
    fname=`basename $p1`
    
    echo $fname
    
    #3 获取上级目录到绝对路径
    pdir=`cd -P $(dirname $p1); pwd`
    echo $pdir
    
    #4 获取当前用户名称
    user=`whoami`
    
    #5 循环
    for((host=1; host<4; host++)); do
           echo ------------------- node0$host --------------
           rsync -av $pdir/$fname $user@node0$host:$pdir
    done
    View Code
  • 相关阅读:
    模型分离(选做)
    密码保护
    实现搜索功能
    完成个人中心—导航标签
    个人中心标签页导航
    评论列表显示及排序,个人中心显示
    完成评论功能
    从首页问答标题到问答详情页
    运行Junit单测时遇到的问题
    spring定时任务执行两次的原因与解决方法
  • 原文地址:https://www.cnblogs.com/hongfeng2019/p/11388635.html
Copyright © 2011-2022 走看看