Linux SFTP下载大文件技巧
导读:Linux SFTP下载大文件的实用技巧 一 基础与连接优化 使用SFTP的get下载单文件,使用get -r递归下载目录;若需指定端口,使用sftp -oPort=端口 用户名@主机。下载前确认本地当前目录(即文件保存位置),必要时用l...
Linux SFTP下载大文件的实用技巧
一 基础与连接优化
- 使用SFTP的get下载单文件,使用get -r递归下载目录;若需指定端口,使用sftp -oPort=端口 用户名@主机。下载前确认本地当前目录(即文件保存位置),必要时用lpwd查看、lcd切换本地目录。为减少重复认证开销,建议配置SSH密钥登录。示例:sftp -oPort=2222 user@host,连接后用get -r remote_dir ./local_dir 下载整目录。
二 稳定性与断点续传
- 长时间传输建议使用screen或tmux会话,避免网络闪断导致任务中断。若传输中断,SFTP交互式会话支持reget 文件名从断点续传;目录递归下载同样可用get -r。示例:在 sftp> 提示符下执行reget large.iso继续未完成的下载。
三 性能优化与进度监控
- 在支持压缩的服务器/网络环境下,开启**-C选项启用SSH压缩以减少传输字节量(对已压缩文件如 .zip/.gz收益有限)。示例:sftp> get -C /remote/largefile.zip。为观察速度与进度,可用pv管道显示实时速率:pv local.iso | sftp user@host < < EOF put - /remote/large.iso EOF(下载时将 put 换为 get)。此外,使用SSH密钥**可避免频繁交互输入密码,提高自动化与稳定性。
四 大文件与不稳定网络的替代方案
- 需要断点续传、增量同步或更高可靠性时,优先考虑rsync over SSH:rsync -avzP user@host:/remote/large.iso ./(其中**-P显示进度并支持续传)。若带宽或稳定性较差,可先分割再并行传输:split -b 1G large.iso large.iso.part.; 传输后用cat large.iso.part.* > large.iso合并。若对速度要求极高且可安装工具,可用Paramiko实现分片并发下载**(多进程/多线程)以显著提升吞吐。
五 常见问题与排查
- 下载目录需使用get -r;若提示权限不足,检查远程目录权限与用户对目标路径的读权限。如需变更本地保存目录,先用lcd切换;远程路径用cd调整。连接或认证失败时,查看**/var/log/auth.log**(SSH登录日志)与**/var/log/syslog**(系统日志)定位问题;必要时确认SSH服务运行与端口开放。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Linux SFTP下载大文件技巧
本文地址: https://pptw.com/jishu/750805.html
