温馨提示×

centos怎么备份ftpserver数据

小樊
44
2026-09-27 05:05:56
栏目: 智能运维

在 CentOS 上备份 FTP Server 数据,通常就是备份 FTP 用户数据(文件) + 配置文件 +(可选)用户和权限信息。下面按常见 FTP 服务(vsftpd / proftpd)给你一套实用方案。


一、确认 FTP 服务类型

rpm -qa | grep -E "vsftpd|proftpd"

常见的是 vsftpd(CentOS 默认)。


二、备份 FTP 数据文件(最重要)

1. 查看 FTP 根目录

vsftpd 常见目录:

grep ftp_username /etc/vsftpd/vsftpd.conf
# 或
ls -ld /var/ftp

用户数据一般在:

  • /home/ftpuser
  • /var/ftp
  • 自定义目录(看 local_root)

2. 打包备份

tar czvf ftp_data_$(date +%F).tar.gz /home/ftpuser /var/ftp

三、备份 FTP 配置文件

vsftpd

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

proftpd

tar czvf ftp_conf_$(date +%F).tar.gz /etc/proftpd.conf /etc/proftpd

四、备份 FTP 用户和权限(如适用)

1. 系统用户 FTP

getent passwd | grep ftp
getent shadow | grep ftp > ftp_shadow.bak

⚠️ shadow 含密码,注意权限:

chmod 600 ftp_shadow.bak

2. 虚拟用户(vsftpd + PAM)

常见文件:

/etc/vsftpd/virtual_users.txt
/etc/vsftpd/virtual_users.db

备份:

tar czvf ftp_vuser_$(date +%F).tar.gz \
/etc/vsftpd/virtual_users.txt \
/etc/vsftpd/virtual_users.db

五、自动化备份(推荐)

1. 写备份脚本

/root/ftp_backup.sh

#!/bin/bash
DATE=$(date +%F)
tar czf /backup/ftp_data_$DATE.tar.gz /home/ftpuser /var/ftp
tar czf /backup/ftp_conf_$DATE.tar.gz /etc/vsftpd

2. 加计划任务

crontab -e
0 3 * * * /root/ftp_backup.sh

六、远程备份(更安全)

rsync -avz /home/ftpuser backup@backupserver:/backup/ftp/

七、恢复示例

tar xzvf ftp_data_2026-01-21.tar.gz -C /
systemctl restart vsftpd

如果你能告诉我:

  • 用的是 vsftpd 还是 proftpd
  • 是否是 虚拟用户
  • 数据量大小

我可以给你更精确的备份方案(增量 / 加密 / 异地)。

0 踩