在 CentOS 上备份 FTP 服务器,通常要备份 FTP 配置文件 + 用户数据(文件),下面给你一套通用、可实操的方案,适用于最常见的 vsftpd(也适用于 pure-ftpd / proftpd,思路一样)。
一般至少包括:
cp -a /etc/vsftpd /etc/vsftpd.bak.$(date +%F)
或直接打包:
tar czvf vsftpd-conf-$(date +%F).tar.gz /etc/vsftpd
假设你的 FTP 根目录是 /data/ftp 或 /home/ftpuser
tar czvf ftpdata-$(date +%F).tar.gz /data/ftp
如果是多用户:
tar czvf ftpdata-$(date +%F).tar.gz /home
✅ 建议:
rsynctarrsync -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
常见文件:
/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
crontab -e
0 2 * * * tar czvf /backup/ftpdata-$(date +\%F).tar.gz /data/ftp
tar xzvf ftpdata-2026-01-20.tar.gz -C /
scp vsftpd-conf-2026-01-20.tar.gz /etc/vsftpd
systemctl restart vsftpd
| 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
你可以直接告诉我:
我可以给你 完全定制的一套备份脚本 ✅