最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Ubuntu FTPServer 怎样备份与恢复数据
时间:2026-07-25 08:46:55 编辑:袖梨 来源:一聚教程网
Ubuntu FTP Server 备份与恢复实操指南

一、备份范围与准备
- 明确要保护的资产:
- 配置文件:如 /etc/vsftpd.conf,以及用户列表 /etc/vsftpd.userlist(若启用);如使用 ProFTPD,对应为 /etc/proftpd/proftpd.conf。
- 数据目录:常见为 /home/ftpuser、/var/ftp 或自定义目录(以实际配置为准)。
- 日志文件:如 /var/log/vsftpd.log 或 /var/log/proftpd/。
- 认证相关:如使用本地系统用户,建议额外备份 /etc/passwd、/etc/shadow 中相关条目(注意权限与合规)。
- 准备备份介质与目录:选择本地外置盘、NFS 或对象存储,创建专用目录(如 /backup/ftp),并确保有充足空间与备份保留策略。
- 一致性建议:对活跃写入的数据目录,优先在维护窗口执行备份;或在备份前短暂停写(如暂停服务或应用),以减少不一致风险。
二、备份方案与命令示例
- 方案A 本地打包备份(适合快速全量)
- 配置文件与列表:sudo tar -czvf /backup/ftp/config_$(date +%F).tar.gz /etc/vsftpd.conf /etc/vsftpd.userlist
- 数据目录(示例为 /home/ftpuser,按实际修改):sudo tar -czvf /backup/ftp/data_$(date +%F).tar.gz /home/ftpuser
- 日志目录:sudo tar -czvf /backup/ftp/logs_$(date +%F).tar.gz /var/log/vsftpd*
- 方案B rsync 增量同步(适合日常增量与快速回滚)
- 本地到备份盘:sudo rsync -aAX --delete /home/ftpuser /backup/ftp/data/
- 远端备份(SSH):sudo rsync -aAX --delete -e ssh /home/ftpuser user@backup-host:/backup/ftp/data/
- 方案C 远程拉取备份(从 FTP/SFTP 服务器侧取回)
- 使用 lftp 获取目录并打包:lftp -u user,pass ftp.example.com -e “mirror -c /remote/ftp /local/backup/ftp; quit”tar -czvf /backup/ftp/remote_$(date +%F).tar.gz -C /local/backup/ftp .
- 方案D 系统级快照与镜像(适合整机回滚)
- Timeshift(BTRFS/RSYNC 快照,便于系统级回滚):sudo timeshift-launcher
- Clonezilla(整盘镜像,适合跨硬件恢复)
- 自动化与保留(示例:每日 2 点打包并保留 7 天)
- 编辑计划任务:crontab -e
- 增加:0 2 * * * /usr/bin/tar -czvf /backup/ftp/data_$(date +%F).tar.gz /home/ftpuser59 2 * * * find /backup/ftp -name “data_*.tar.gz” -mtime +7 -delete注:FTPS 场景请使用支持 TLS 的工具(如 lftp 的 ftps://),或在受信网络中先建立 SSH 通道再备份。
三、恢复步骤
- 场景1 仅恢复数据目录(以 /home/ftpuser 为例)
- 全新恢复:sudo tar -xzvf /backup/ftp/data_2025-08-01.tar.gz -C /
- 增量回滚(先停写,再 rsync 覆盖):sudo systemctl stop vsftpdsudo rsync -aAX --delete /backup/ftp/data/ /home/ftpuser/sudo systemctl start vsftpd
- 场景2 恢复配置文件sudo cp /backup/ftp/config_.tar.gz /tmp && tar -xzvf /tmp/config_.tar.gz -C /sudo systemctl restart vsftpd
- 场景3 整机级回滚
- Timeshift:启动到 Timeshift 界面,选择快照点并执行“还原”。
- Clonezilla:用启动盘进入恢复模式,选择镜像与目标磁盘执行恢复。
- 场景4 迁移到新服务器
- 在新服务器安装并启动 vsftpd:sudo apt update && sudo apt install vsftpd && sudo systemctl start vsftpd
- 传输备份包:scp /backup/ftp/ftp_backup.tar.gz user@new:/backup/
- 解压到目标路径:sudo tar -xzvf /backup/ftp_backup.tar.gz -C /
- 调整配置(如根目录、权限、被动端口等)后重启:sudo systemctl restart vsftpd
- 客户端连接测试(上传/下载/删除)。
四、验证与运维要点
- 校验完整性:
- 校验包:tar -tzvf /backup/ftp/data_*.tar.gz | head;重要文件可做哈希校验。
- 权限与属主:ls -l /home/ftpuser 确认与备份前一致(必要时 chown -R ftpuser:ftpuser)。
- 日志核查:tail -n 200 /var/log/vsftpd.log 或 journalctl -u vsftpd,确认无异常登录/权限报错。
- 防火墙与被动端口:若启用被动模式,放行端口段(示例 40000:50000/tcp),并确保云安全组/本机防火墙一致。
- 计划任务与健康检查:保留策略(如保留 7–30 天)、定期恢复演练、异地/云端副本,降低单点风险。
相关文章
- 研究领域:sciencedirect数据库 07-25
- ScienceDirect数据库数据来源 07-25
- sciencedirect数据库适用人群说明 07-25
- sciencedirect数据库费用为多少 07-25
- hbase serverless架构存在哪些挑战 07-25
- hbase serverless架构扩展性如何 07-25