温馨提示×

Linux SFTP传输大文件技巧

小樊
69
2025-05-26 11:19:00
栏目: 智能运维

在Linux系统下使用SFTP(Secure File Transfer Protocol)进行大文件传输时,可以采用以下技巧来提高效率和稳定性:

使用putget命令上传和下载大文件

  • 上传大文件:使用put命令将本地文件上传到远程服务器。例如,要将本地文件largefile.tar.gz上传到远程服务器的/backups目录,可以使用命令:

    sftp> put largefile.tar.gz /backups/largefile.tar.gz
    
  • 下载大文件:使用get命令从远程服务器下载大文件到本地。例如,要从远程服务器的/backups目录下载文件largefile.tar.gz,可以使用命令:

    sftp> get /backups/largefile.tar.gz
    

使用mputmget命令批量传输文件

  • 上传多个文件:使用mput命令上传多个本地文件到远程服务器。例如,要上传当前目录下的所有.txt文件,可以使用命令:

    sftp> mput *.txt
    
  • 下载多个文件:使用mget命令从远程服务器下载多个文件。例如,要下载远程服务器/backups目录下的所有.txt文件,可以使用命令:

    sftp> mget /backups/*.txt
    

使用-r选项递归传输目录

  • 上传整个目录:使用put -r命令递归上传整个本地目录及其子目录和文件到远程服务器。例如,要上传本地目录myfolder到远程服务器的/backups/myfolder,可以使用命令:

    sftp> put -r myfolder /backups/myfolder
    
  • 下载整个目录:使用get -r命令递归下载整个远程目录及其子目录和文件到本地。例如,要从远程服务器的/backups/myfolder下载整个目录,可以使用命令:

    sftp> get -r /backups/myfolder ./myfolder
    

使用-C选项启用压缩功能

  • 加速传输:使用-C选项启用SSH的压缩功能,可以加快传输速度。例如,要压缩本地文件largefile.tar.gz后再上传,可以使用命令:

    sftp> put -C largefile.tar.gz /backups/largefile.tar.gz.gz
    

在屏幕或tmux会话中运行SFTP命令

  • 保持会话:在传输大文件时,建议在屏幕或tmux会话中运行SFTP命令,以防止因网络中断而导致传输失败。

使用SSH密钥进行无密码登录

  • 提高效率:为了提高传输效率,建议创建SSH密钥并设置无密码SFTP登录,这样可以避免每次传输时都需要输入密码。

自动化文件传输

  • 简化操作:可以使用SFTP命令编写Shell脚本来自动化文件传输任务,从而简化操作流程。

以上技巧可以帮助您在Linux系统下使用SFTP高效、安全地传输大文件。

0