/etc/vsftpd/vsftpd.conf;/var/ftp(匿名用户)或/home/ftpuser(虚拟用户,ftpuser为用户名);/var/log/vsftpd/(若未开启日志,需先修改配置文件启用)。sudo systemctl stop vsftpd
root权限,建议使用sudo执行命令。/backup/vsftpd):sudo mkdir -p /backup/vsftpd
sudo cp /etc/vsftpd/vsftpd.conf /backup/vsftpd/vsftpd.conf.bak
vsftpd.conf及pam.d/vsftpd等相关文件),可使用tar命令:sudo tar -czvf /backup/vsftpd_config.tar.gz /etc/vsftpd/
sudo tar -czvf /backup/vsftpd_ftp_root.tar.gz /var/ftp
ftpuser的家目录):sudo tar -czvf /backup/vsftpd_user_data.tar.gz /home/ftpuser
rsync仅备份新增或修改的文件,节省空间:sudo rsync -av /var/ftp /backup/vsftpd_incremental_ftp/
sudo rsync -av /home/ftpuser /backup/vsftpd_incremental_user/
sudo tar -czvf /backup/vsftpd_logs.tar.gz /var/log/vsftpd/
find命令删除7天前的日志,避免占用过多空间:find /var/log/vsftpd/ -type f -mtime +7 -delete
backup_vsftpd.sh,内容如下:#!/bin/bash
BACKUP_DIR="/backup/vsftpd_$(date +%Y%m%d)"
mkdir -p "$BACKUP_DIR"
tar -czvf "$BACKUP_DIR/vsftpd_config.tar.gz" /etc/vsftpd/
tar -czvf "$BACKUP_DIR/vsftpd_user_data.tar.gz" /home/ftpuser
tar -czvf "$BACKUP_DIR/vsftpd_logs.tar.gz" /var/log/vsftpd/
echo "VSFTPD backup completed on $(date)" >> /var/log/vsftpd_backup.log
chmod +x /path/to/backup_vsftpd.sh
crontab -e添加每日凌晨2点执行的任务:0 2 * * * /path/to/backup_vsftpd.sh
sudo cp /backup/vsftpd/vsftpd.conf.bak /etc/vsftpd/vsftpd.conf
sudo tar -xzvf /backup/vsftpd_config.tar.gz -C /
sudo systemctl stop vsftpd
sudo tar -xzvf /backup/vsftpd_ftp_root.tar.gz -C /
sudo systemctl start vsftpd
sudo systemctl stop vsftpd
sudo tar -xzvf /backup/vsftpd_user_data.tar.gz -C /
sudo systemctl start vsftpd
sudo tar -xzvf /backup/vsftpd_logs.tar.gz -C /
sudo vsftpd /etc/vsftpd/vsftpd.conf
FileZilla)连接服务器,验证用户数据是否可访问。rsync进行增量备份。sudo chcon -R -t vsftpd_data_t /var/ftp
sudo chcon -R -t user_home_t /home/ftpuser