温馨提示×

centos怎么备份ftpserver

小樊
42
2026-07-08 20:30:18
栏目: 智能运维

在 CentOS 上备份 FTP 服务器,通常要备份 FTP 配置文件 + 用户数据(文件),下面给你一套通用、可实操的方案,适用于最常见的 vsftpd(也适用于 pure-ftpd / proftpd,思路一样)。


一、明确你要备份什么

一般至少包括:

  1. FTP 配置文件
  2. FTP 用户数据目录
  3. 系统用户 / 虚拟用户配置(如有)
  4. 防火墙 / SELinux 相关配置(可选)

二、常见的 FTP 服务(vsftpd)备份示例

1️⃣ 备份 vsftpd 配置文件

cp -a /etc/vsftpd /etc/vsftpd.bak.$(date +%F)

或直接打包:

tar czvf vsftpd-conf-$(date +%F).tar.gz /etc/vsftpd

2️⃣ 备份 FTP 数据目录(重点)

假设你的 FTP 根目录是 /data/ftp/home/ftpuser

tar czvf ftpdata-$(date +%F).tar.gz /data/ftp

如果是多用户:

tar czvf ftpdata-$(date +%F).tar.gz /home

建议

  • 数据量大 → 用 rsync
  • 数据小 → 用 tar

3️⃣ 使用 rsync 增量备份(推荐)

rsync -avz /data/ftp/ /backup/ftp_$(date +%F)/

远程备份:

rsync -avz /data/ftp/ root@backup-server:/backup/ftp/

三、虚拟用户 / 认证方式备份

如果是系统用户

cp /etc/passwd /etc/passwd.bak
cp /etc/shadow /etc/shadow.bak
cp /etc/group /etc/group.bak

如果是虚拟用户(vsftpd)

常见文件:

/etc/vsftpd/vsftpd_user.db
/etc/vsftpd/vuser_list

备份:

tar czvf vsftpd-vuser-$(date +%F).tar.gz \
/etc/vsftpd/vsftpd_user.db \
/etc/vsftpd/vuser_list

四、定时自动备份(示例)

每天凌晨 2 点备份

crontab -e
0 2 * * * tar czvf /backup/ftpdata-$(date +\%F).tar.gz /data/ftp

五、恢复 FTP 服务器(简要)

tar xzvf ftpdata-2026-01-20.tar.gz -C /
scp vsftpd-conf-2026-01-20.tar.gz /etc/vsftpd
systemctl restart vsftpd

六、不同 FTP 服务备份要点

FTP 服务 配置路径
vsftpd /etc/vsftpd/
pure-ftpd /etc/pure-ftpd/
proftpd /etc/proftpd/

七、注意事项(很重要)

✅ SELinux 权限

ls -Z /data/ftp

✅ 防火墙

cp /etc/firewalld/zones/public.xml /backup/

✅ 磁盘空间

df -h

八、我可以继续帮你

你可以直接告诉我:

  1. 用的是 vsftpd / pure-ftpd / proftpd?
  2. FTP 用户是系统用户还是虚拟用户?
  3. 数据大概多大?
  4. 是否需要远程备份?

我可以给你 完全定制的一套备份脚本

0