linux

Linux SFTP如何进行文件同步

小樊
50
2025-09-13 04:26:23
栏目: 智能运维

在Linux系统中,使用SFTP(SSH File Transfer Protocol)进行文件同步可以通过多种方法实现。以下是两种常用的方法:

方法一:使用rsync命令结合SFTP

rsync是一个非常强大的文件同步工具,它可以通过SSH协议进行安全传输。即使目标服务器不支持SFTP,只要支持SSH,就可以使用rsync

  1. 安装rsync(如果尚未安装):

    sudo apt-get install rsync  # Debian/Ubuntu
    sudo yum install rsync      # CentOS/RHEL
    
  2. 使用rsync进行文件同步

    rsync -avz -e ssh /本地路径/ user@远程服务器:/远程路径/
    

    参数解释:

    • -a:归档模式,表示递归传输并保持符号链接、文件权限、时间戳、用户和组信息。
    • -v:详细模式,显示传输过程中的详细信息。
    • -z:压缩文件数据在传输过程中。
    • -e ssh:指定使用SSH作为传输协议。

    例如,将本地目录/home/user/local_folder同步到远程服务器的/home/user/remote_folder

    rsync -avz -e ssh /home/user/local_folder user@remote_server:/home/user/remote_folder
    

方法二:使用sftp命令手动同步

如果你更喜欢使用SFTP命令行工具进行手动同步,可以按照以下步骤操作:

  1. 连接到远程服务器

    sftp user@remote_server
    

    输入密码后,你将进入SFTP交互模式。

  2. 上传文件或目录

    • 上传单个文件:
      put /本地路径/文件名 /远程路径/
      
    • 上传整个目录(需要先创建远程目录):
      mkdir /远程路径/目录名
      put -r /本地路径/目录名 /远程路径/目录名
      
  3. 下载文件或目录

    • 下载单个文件:
      get /远程路径/文件名 /本地路径/
      
    • 下载整个目录(需要先创建本地目录):
      mkdir /本地路径/目录名
      get -r /远程路径/目录名 /本地路径/目录名
      
  4. 退出SFTP会话

    exit
    

注意事项

通过以上方法,你可以方便地在Linux系统中使用SFTP进行文件同步。

0
看了该问题的人还看了