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
等工具加密備份文件,提升數據安全性。