首页主机资讯如何在Linux用FileZilla进行FTP备份

如何在Linux用FileZilla进行FTP备份

时间2025-12-10 12:52:03发布访客分类主机资讯浏览951
导读:在Linux使用FileZilla进行FTP备份 一 准备与安装 安装 FileZilla 客户端(支持 FTP/FTPS/SFTP): Debian/Ubuntu 系:sudo apt-get update && su...

在Linux使用FileZilla进行FTP备份

一 准备与安装

  • 安装 FileZilla 客户端(支持 FTP/FTPS/SFTP):
    • Debian/Ubuntu 系:sudo apt-get update & & sudo apt-get install filezilla
    • RHEL/CentOS 系:sudo dnf install filezilla(或使用系统软件中心)
  • 准备连接信息:服务器 IP/域名、协议(建议 FTPSSFTP)、端口(FTP 21SFTP 22)、用户名、密码/密钥、以及本地与远程的备份目录。
  • 若必须使用明文 FTP,务必在受信任网络中运行,并考虑启用 TLS/SSL 加密(即 FTPS)。

二 图形界面手动备份步骤

  • 打开 FileZilla → 文件 → 站点管理器 → 新建站点:
    • 协议:选择 FTP - 文件传输协议(需要加密时选 FTPS - 显式 FTP over TLS;若服务器支持 SSH 则优先 SFTP - SSH 文件传输协议)。
    • 主机:填入服务器 IP/域名;端口:21(FTP/FTPS)22(SFTP)
    • 登录类型:一般选 正常,填写用户名与密码;SFTP 可选择基于密钥的登录。
  • 连接成功后,界面左侧为 本地站点,右侧为 远程站点
    • 备份到远程:在左侧选中本地目录/文件,拖拽到右侧目标目录(上传)。
    • 从远程恢复:在右侧选中目录/文件,拖拽到左侧(下载)。
  • 传输完成后,可在“传输队列/日志”查看状态与结果,确认无失败项。

三 自动化备份方案

  • 说明:FileZilla 为 GUI 客户端,不提供原生命令行;若需无人值守/定时备份,建议采用以下替代方式:
    • 使用 SFTP/FTPS 的命令行工具(如 lftp、curl、sftp)编写脚本,并通过 cron 定时执行。
    • 若坚持使用图形客户端,可借助 xdotool 等模拟键鼠操作,但稳定性与环境依赖较差,不推荐用于生产。
  • 示例脚本思路(SFTP,免交互密钥登录):
    • 前提:已配置本机到服务器的 SSH 公钥认证,本地备份目录为 /data/backup,远程目录为 /backup
    • 脚本 backup.sh:
      #!/usr/bin/env bash
      set -e
      BACKUP_SRC="/data/backup"
      REMOTE_USER="backup"
      REMOTE_HOST="192.0.2.10"
      REMOTE_DIR="/backup"
      SSH_KEY="/home/backup/.ssh/id_rsa"
      TIMESTAMP=$(date +%F_%H-%M-%S)
      LOG="/var/log/backup_ftp_${
      TIMESTAMP}
      .log"
      
      echo "[$(date)] 开始备份 ${
      BACKUP_SRC}
       → ${
      REMOTE_USER}
      @${
      REMOTE_HOST}
      :${
      REMOTE_DIR}
          " >
          >
       "$LOG"
      
      # 执行同步(保留目录结构、删除远端多余文件;可按需增减参数)
      rsync -avz --delete -e "ssh -i ${
      SSH_KEY}
       -p 22" \
        "${
      BACKUP_SRC}
      /" "${
      REMOTE_USER}
      @${
      REMOTE_HOST}
      :${
      REMOTE_DIR}
          /" >
          >
           "$LOG" 2>
          &
      1
      
      echo "[$(date)] 备份完成,详情见 ${
      LOG}
          " >
          >
           "$LOG"
      
    • 赋权与定时:
      chmod +x /usr/local/bin/backup.sh
      # 每天 02:00 执行
      echo "0 2 * * * root /usr/local/bin/backup.sh" | sudo tee /etc/cron.d/backup_ftp
      
  • 若服务器仅支持 FTP(不推荐),可用 lftp 脚本示例(明文传输,务必在可信网络):
    #!/usr/bin/env bash
    set -e
    HOST="192.0.2.10"
    USER="backup"
    PASS="YourPassword"
    LOCAL_DIR="/data/backup"
    REMOTE_DIR="/backup"
    LOG="/var/log/ftp_backup.log"
    
    lftp -u "$USER","$PASS" -e "
      set ftp:ssl-allow no;
        
      mirror -R --delete --verbose '$LOCAL_DIR' '$REMOTE_DIR';
        
      bye
    " "$HOST" >
        >
         "$LOG" 2>
        &
        1
    

四 安全与排错要点

  • 优先选择 SFTP/FTPS,避免明文 FTP;在公共网络或合规场景下必须使用加密传输。
  • 防火墙与被动端口:
    • FTP 需放行 21/TCP(控制)与服务器配置的 被动模式端口段(如示例 65000–65534/TCP);
    • SFTP 仅需放行 22/TCP
  • 连接失败排查:确认服务已启动、协议/端口正确、用户名与凭据无误;查看 FileZilla 底部 日志 获取错误细节(超时、拒绝、TLS 握手失败等)。
  • 备份策略:建议采用 增量/差异 方式、保留 多份历史、并定期做 恢复演练;重要数据至少保留 异地/离线 副本。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 如何在Linux用FileZilla进行FTP备份
本文地址: https://pptw.com/jishu/768190.html
VirtualBox里Linux虚拟机如何设置静态IP Linux下VirtualBox虚拟机如何调整分辨率

游客 回复需填写必要信息