在Debian下結合inotify與rsync可顯著提高數據備份效率,核心方案如下:
安裝工具:
sudo apt update && sudo apt install inotify-tools rsync
編寫監控腳本:
用inotifywait監控源目錄變化,觸發rsync增量同步,示例腳本:
#!/bin/bash
SOURCE_DIR="/path/to/source"
BACKUP_DIR="/path/to/backup"
inotifywait -mrq -e create,delete,modify --format '%w%f' "$SOURCE_DIR" | while read FILE
do
rsync -avz --delete "$SOURCE_DIR/" "$BACKUP_DIR"
done
-m:持續監控;-r:遞歸子目錄;-q:靜默輸出。rsync參數:-a(歸檔模式)、-z(壓縮傳輸)、--delete(保持目標與源一致)。優化策略:
--exclude參數跳過無需備份的文件(如臨時文件)。--delay參數(如--delay=1)避免頻繁小文件觸發過多同步。xargs -P或GNU Parallel并行執行rsync,提升多文件處理效率。后臺運行與日志:
nohup ./backup_script.sh >> backup.log 2>&1 &
通過systemd或supervisor管理腳本,確保進程持續運行。
權限與安全:
chmod 700)。關鍵優勢:
rsync的高效算法,降低CPU和I/O壓力。參考來源: