在 Ubuntu 上备份 FTP 服务器,通常主要备份FTP 用户数据(文件)和FTP 服务配置。下面以常见的 FTP 服务器(vsftpd / proftpd / pure-ftpd)为例说明。
dpkg -l | grep -E "vsftpd|proftpd|pure-ftpd"
常见情况:
一般位置:
/srv/ftp/home/ftp/var/ftp查看 vsftpd 配置示例:
grep -E "local_root|anon_root|user_sub_token" /etc/vsftpd.conf
sudo tar czvf ftpdata_$(date +%F).tar.gz /srv/ftp
建议放到外部存储或备份服务器:
scp ftpdata_*.tar.gz backup@backupserver:/backup/
sudo tar czvf vsftpd_conf.tar.gz /etc/vsftpd.conf /etc/vsftpd/
sudo tar czvf proftpd_conf.tar.gz /etc/proftpd/ /etc/proftpd.conf
sudo tar czvf pureftpd_conf.tar.gz /etc/pure-ftpd/ /etc/pure-ftpd.conf
sudo cp /etc/passwd /etc/shadow /etc/group /backup/
或只导出 FTP 用户:
grep ftp /etc/passwd
常见文件:
/etc/vsftpd/virtual_users.txt/etc/pam.d/vsftpdsudo tar czvf ftp_vusers.tar.gz /etc/vsftpd/virtual_users.txt /etc/pam.d/vsftpd
sudo crontab -e
每天凌晨 2 点:
0 2 * * * tar czf /backup/ftp_$(date +\%F).tar.gz /srv/ftp /etc/vsftpd.conf
sudo tar xzvf ftpdata_2026-01-21.tar.gz -C /
sudo systemctl restart vsftpd
如果你告诉我:
我可以给你更精确的备份脚本。