linux

如何使用SFTP进行数据备份与恢复

小樊
52
2025-09-17 04:15:43
栏目: 编程语言

数据备份

  1. 安装SFTP服务器
    • CentOSsudo yum install openssh-server
    • Ubuntusudo apt update && sudo apt install openssh-server
  2. 配置SFTP用户
    • 编辑 /etc/ssh/sshd_config,添加或修改以下内容:
      Subsystem sftp internal-sftp  
      Match Group sftpusers  
      ChrootDirectory %h  
      ForceCommand internal-sftp  
      AllowTcpForwarding no  
      X11Forwarding no  
      
      创建用户组并添加用户:
      sudo groupadd sftpusers  
      sudo useradd -m -G sftpusers username  
      sudo passwd username  
      
  3. 重启SSH服务
    sudo systemctl restart sshd  
    
  4. 执行备份操作
    • 命令行方式
      sftp username@remote_host  
      put /本地/文件路径 /远程/备份目录/  
      
      或批量备份:
      mput /本地/文件路径/* /远程/备份目录/  
      
    • 图形工具:使用FileZilla等客户端,通过“上传”功能备份文件
  5. 自动化备份(可选)
    编写脚本结合cron定时执行,例如:
    #!/bin/bash  
    sftp username@remote_host <<EOF  
    cd /远程/备份目录  
    put -r /本地/备份目录/* .  
    EOF  
    

数据恢复

  1. 从SFTP服务器下载文件
    sftp username@remote_host  
    get /远程/备份目录/文件 /本地/恢复路径/  
    
    或批量下载:
    mget /远程/备份目录/文件* /本地/恢复路径/  
    
  2. 使用图形工具恢复
    通过FileZilla等客户端,右键选择“下载”文件至本地
  3. 误删除恢复(需提前有备份)
    从备份文件中提取数据,或使用extundelete(Linux)等工具恢复未被覆盖的文件

注意事项

参考来源:[1,2,3,4,5,6,7,8,10,11]

0
看了该问题的人还看了