溫馨提示×

Ubuntu inotify與rsync如何協同工作

小樊
54
2025-08-31 22:31:15
欄目: 智能運維

inotify 是 Linux 內核提供的一種文件系統事件監控機制,它可以實時監控文件或目錄的變化,如創建、刪除、修改等。而 rsync 是一個用于文件同步和備份的工具。將 inotifyrsync 結合使用,可以實現實時的文件同步。

以下是一個簡單的示例,說明如何在 Ubuntu 系統中使用 inotifywaitinotify 的一個命令行工具)和 rsync 協同工作:

  1. 首先,確保已經安裝了 inotify-tools 軟件包,它包含了 inotifywait 命令。如果沒有安裝,可以使用以下命令安裝:
sudo apt-get update
sudo apt-get install inotify-tools
  1. 創建一個名為 sync.sh 的 shell 腳本,并添加以下內容:
#!/bin/bash

# 源目錄和目標目錄
src_dir="/path/to/source/directory"
dest_dir="/path/to/destination/directory"

# 使用 inotifywait 監控源目錄的變化,并在檢測到變化時執行 rsync 命令
inotifywait -m -r -e create,delete,modify --format '%w%f' "${src_dir}" | while read file
do
    # 使用 rsync 同步文件或目錄
    rsync -avz --delete "${src_dir}/" "${dest_dir}"
done

請將 /path/to/source/directory/path/to/destination/directory 替換為實際的源目錄和目標目錄路徑。

  1. 為腳本添加可執行權限:
chmod +x sync.sh
  1. 運行腳本:
./sync.sh

現在,每當源目錄中的文件發生變化時,inotifywait 都會檢測到這些變化,并觸發 rsync 命令將更改同步到目標目錄。

注意:這個示例僅用于演示目的。在實際應用中,可能需要根據具體需求對腳本進行調整,例如添加日志記錄、錯誤處理等功能。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女