You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于利用rsync测试存储受限的服务器A向服务器B传输大流量网络速度的方案咨询

利用rsync测试存储受限的服务器A向服务器B传输大流量网络速度的方案咨询

这个问题我之前帮朋友处理过类似的,刚好有几个实用的方案能完美匹配你的需求,完全不用纠结A的磁盘空间限制:

  • 直接流式生成数据并传输(最推荐)
    你可以用dd从A的/dev/zero(一个无限生成零字节的虚拟设备)生成指定大小的数据流,直接通过SSH管道传到B,B端直接把数据丢进/dev/null(不存储任何内容),全程不会占用A的磁盘空间。命令示例:

    # 生成1TB的数据流并传输到B,B端直接丢弃数据
    dd if=/dev/zero bs=1M count=1024000 | ssh your_user@serverB 'cat > /dev/null'
    

    要是B需要密码登录,你可以手动输入密码(SSH会自动弹出提示);如果想避免交互(适合脚本批量测试),可以用sshpass(注意:密码会明文暴露,仅在安全环境下使用):

    dd if=/dev/zero bs=1M count=1024000 | sshpass -p 'your_b_server_password' ssh your_user@serverB 'cat > /dev/null'
    

    你还可以调整bs(块大小)和count(块数量)来控制总数据量,比如count=2048000就是2TB,足够让你测试足够长时间的稳定传输速度。

  • 结合rsync的流式传输方案
    如果你更习惯用rsync,也可以让它读取标准输入的数据流再传输,同样不会占用A的磁盘:

    dd if=/dev/zero bs=1M count=1024000 | rsync --progress - your_user@serverB:/dev/null
    

    这里的-表示rsync从标准输入读取数据,--progress参数能让你看到实时的传输进度和速度。

  • 补充:实时监控传输速度
    要是想直观看到动态的传输速率、已传输量,可以加个pv工具(大部分Linux发行版可通过包管理器安装):

    dd if=/dev/zero bs=1M count=1024000 | pv | ssh your_user@serverB 'cat > /dev/null'
    

    这样你就能在A的终端看到实时的速度统计,方便判断传输的稳定性。

关于你提到的反向传输(B→A到/dev/null),这个方案确实可行,但既然你偏好A→B的方向,上面的流式方案完全能满足需求,而且不需要改动任何服务器的存储配置。

备注:内容来源于stack exchange,提问作者philshem

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 07:39:50