sudo systemctl stop vsftpd
root权限)。VSFTP的核心配置文件通常位于/etc/vsftpd/目录(部分系统为/etc/vsftpd.conf单个文件),备份时需包含该目录下的所有配置文件(如vsftpd.conf、vsftpd.user_list等)。
sudo cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
sudo tar -czvf vsftpd_config_backup.tar.gz /etc/vsftpd/ # CentOS/Ubuntu均适用
FTP用户的数据通常存储在以下目录(取决于系统配置):
/var/ftp/(匿名用户数据)或/home/ftpuser/(本地用户数据);/var/lib/vsftpd/(用户数据存储目录)或/home/ftpuser/(本地用户主目录)。tar命令打包备份(保留目录结构及文件权限):# Ubuntu示例(备份匿名用户数据和本地用户主目录)
sudo tar -czvf vsftpd_data_backup.tar.gz /var/ftp/ /home/ftpuser/
# CentOS示例(备份用户数据目录和本地用户主目录)
sudo tar -czvf vsftpd_data_backup.tar.gz /var/lib/vsftpd/ /home/ftpuser/
日志文件记录了FTP服务的访问记录和操作轨迹,可用于审计和故障排查,通常位于/var/log/vsftpd/目录。
sudo tar -czvf vsftpd_logs_backup.tar.gz /var/log/vsftpd/
将生成的备份压缩包(如vsftpd_config_backup.tar.gz、vsftpd_data_backup.tar.gz)移动至外部存储设备或远程服务器(如使用scp命令传输至另一台服务器):
sudo mv vsftpd_*.tar.gz /mnt/external_hard_drive/ # 移动至外部硬盘
# 或
sudo scp vsftpd_*.tar.gz user@remote_server:/backup/vsftpd/ # 传输至远程服务器
恢复前需停止vsftpd服务,避免新数据与恢复的数据冲突:
sudo systemctl stop vsftpd
sudo tar -xzvf vsftpd_config_backup.tar.gz -C / # 解压至原目录
sudo cp /mnt/external_hard_drive/vsftpd.conf.bak /etc/vsftpd/vsftpd.conf
解压数据备份包至原数据目录(覆盖现有数据,需确认备份文件的完整性):
# Ubuntu示例(恢复至默认路径)
sudo tar -xzvf vsftpd_data_backup.tar.gz -C /
# CentOS示例(恢复至默认路径)
sudo tar -xzvf vsftpd_data_backup.tar.gz -C /
恢复完成后,启动vsftpd服务并设置开机自启:
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
cat或vim命令查看/etc/vsftpd/vsftpd.conf,确认配置项是否与备份前一致;FileZilla)或命令行工具(ftp、lftp)连接服务器,验证用户权限和数据访问是否正常;/var/log/vsftpd/目录下的日志,确认服务启动无报错。rsync仅备份新增/修改的文件),每月执行全量备份(打包整个目录);chcon命令),避免权限问题;gpg等工具加密备份文件,提升数据安全性。