Tags
linux
Created
Jan 8, 2016 12:04 PM
scp 基于 SSH
但当小文件众多的情况下,rsync 会导致硬盘I/O非常高,而 scp 基本不影响系统正常使用
远端路径类似于 host:/path/ ,host可以用 ssh 的配置,一般是“用户@地址”。
有空格:在空格前加斜杠,整个文件目录加引号
scp [参数] [原路径] [目标路径]
- C 允许压缩。(将-C标志传递给ssh,从而打开压缩功能)
- p 保留原文件的修改时间,访问时间和访问权限。
- q 不显示传输进度条。
- r 递归复制整个目录。
- v 详细方式显示输出。
也可以直接用:$ cd && tar czv src | ssh user@host 'tar xz'
SSH情况下,rsync 客户端运行程序必须同时在本地和远程机器上安装。
格式跟 scp 一样
- a 文档归档,相当于-rlptgoD
- v 详细方式显示输出。
- H 同步硬链接
–progress 显示进度条
–delete 删除原路径不存在的远端文件
- t 对比时间戳和文件大小,相同(但有可能内容不同)则不会同步
- I 挨个同步,modify time改变
- z 压缩,一般情况下,-z的压缩算法会和gzip的一样。
- r 选项,即recursive(递归的、循环的)
- l 保持软链接文件类型
- L 同步软链接源文件
- p 同步权限 perserve permissions
rsync -avP --delete build devbox:/opt/fe
用密码作为命令行参数:
rsync --rsh="/usr/bin/sshpass -p "password" ssh -o StrictHostKeyChecking=no -l root" /source/file/path [email protected]:/destination/file/path