scp与rsync限速

一/scp限速1M
#scp -l 1000 文件名  账号@远程机器IP
此时的传输速率就是1M/8=100K左右
二/rsync是(限制为 100k Bytes/s):
#rsync -auvzP--bwlimit=100 本地的文件 远程的文件
参数说明:
v:详细提示
  a:以archive模式操作,复制目录、符号连接,等价于 -rlptgoD 。
  z:压缩
  u:只进行更新,防止本地新文件被重写,注意两者机器的时钟的同时
P:是综合了--partial --progress两个参数,
所以此时的rsync支持了断点续传


[liujianzuo@ow2 201512]$ rsync -avz --bwlimit=500 -e 'ssh -p10001' 2015-12-01-access_wap.log ffff@4.5.2.42:/root/log_wap
The authenticity of host '[124.205.209.42]:10001 ([124.205.209.42]:10001)' can't be established.
RSA key fingerprint is 33:61:43:8a:ca:34:3c:f0:56:45:1a:20:7f:0e:b0:8b.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[124.205.209.42]:10001' (RSA) to the list of known hosts.
root@124.205.209.42's password:
sending incremental file list
2015-12-01-access_wap.log

sent 13,951,993 bytes received 34 bytes 416,478.42 bytes/sec
total size is 172,036,811 speedup is 12.33
[liujianzuo@ow2 201512]$

转载于:https://www.cnblogs.com/liujianzuo888/p/5013073.html

<think>嗯,用户正在询问有关Linux或SSH工具中SCP配置的问题,我需要从之前的引用中找到相关信息并整合回答。用户提到的"scp-config"可能指两种配置:SSH的客户端配置优化SCP传输效率(如引用[1]的持久化连接),或SCP命令本身的参数配置(如引用[3]的文件路径格式)。注意到用户特别关注"configuration"这个词,核心需求应该是如何通过配置提升SCP使用体验。引用[1]提到的ControlMaster设置很关键,这能避免重复认证,对频繁传输的用户特别有用。需要详细说明配置路径~/.ssh/config的语法格式参数含义。引用[3]展示了SCP的基础命令结构,可以作为补充内容,但用户更可能需要的是高阶配置而非基础用法。这里要强调路径格式的灵活性易错点(比如结尾冒号的区别)。用户没有提到expect脚本,但引用[2]其实提供了另一种思路——当需要完全自动化传输时,可以结合expect处理密码输入。考虑到安全性,准备提醒用户优先使用SSH密钥认证。引用[4]的下载源配置虽然相关度不高,但清华源这种优化思路可以迁移到SCP场景,比如高速内网传输时可搭建本地镜像服务器。可能还需要延伸说明用户未问但相关的要点:比如SCP替代方案(rsync增量传输)、安全加固(限制端口)。最后要形成层次清晰的配置框架,从基础命令、加速技巧到安全扩展三个维度组织内容。</think> 以下是Linux系统中SCP配置的核心方法及相关技术要点,整合SSH工具实现高效文件传输: --- ### 一、SSH客户端基础配置(`~/.ssh/config`) 通过此文件预设SCP连接参数,**减少重复输入**: ```bash Host myserver # 自定义主机别名 HostName 192.168.1.100 # 服务器IP User root # 登录用户名 Port 2222 # 非标准SSH端口 IdentityFile ~/.ssh/id_ed25519 # 密钥路径 ControlPath ~/.ssh/master-%r@%h:%p # 持久化连接路径[^1] ControlMaster auto # 启用连接复用 ``` **使用效果**: ```bash scp file.txt myserver:/opt/ # 无需输入IP/用户/端口 ``` --- ### 二、关键配置项详解 1. **持久化连接(加速多次传输)** - `ControlMaster auto`:后台建立主连接通道 - `ControlPersist 600`:连接保持600秒(超时自动关闭) ```bash scp largefile.iso myserver:/backup/ # 首次建立连接 scp log*.txt myserver:/logs/ # 复用现有连接提速50%+[^1] ``` 2. **端口密钥配置** - 解决非22端口场景:`Port 2222` - 免密码登录:`IdentityFile ~/.ssh/private_key` --- ### 三、SCP命令语法精要 | **场景** | **命令示例** | |-------------------------|-----------------------------------------------------------------------------| | 本地 → 远程(保留原名) | `scp file.txt user@host:/opt/` | | 本地 → 远程(重命名) | `scp file.txt user@host:/opt/new_name.txt` | | 远程 → 本地 | `scp user@host:/var/log/app.log ./backup/` | | 递归传输目录 | `scp -r project_dir/ user@host:~/backup/` | | 限速传输(1MB/s) | `scp -l 1000 largefile.iso user@host:/data/` # -l单位Kb/s[^3] | --- ### 四、高阶技巧优化 1. **Expect自动化脚本** 解决交互式密码输入问题: ```bash #!/usr/bin/expect spawn scp -P 2222 /data/config.ini user@host:/config/ expect "password:" { send "your_password\r" } expect eof ``` > **注意**:优先用SSH密钥替代密码[^2] 2. **传输优化方案** - 压缩传输:`scp -C backup.tar.gz host:/backup/` - 禁用严格主机检查:`-o StrictHostKeyChecking=no`(测试环境) 3. **替代工具建议** ```bash rsync -avz -e "ssh -p 2222" src/ host:dest/ # 增量传输/断点续传 ``` --- ### 五、典型问题处理 1. **连接超时** 添加配置:`ServerAliveInterval 30` 2. **权限错误** ```bash chmod 600 ~/.ssh/config # 配置文件权限 chmod 700 ~/.ssh # 目录权限 ``` > 通过合理配置`~/.ssh/config`SCP参数,可显著提升传输效率并减少操作复杂度。建议生产环境**始终使用SSH密钥认证**替代密码[^1][^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值