0

inotify-tools に基づいて簡単なスクリプトを作成しましたが、最終的にコマンド mount.cifs によって NAS からマウントされた /remotepath を監視することにしたとき、それは機能しませんでした。

そのため、調査の結果、inotify-tools がリモート フォルダーをサポートしていないという情報が見つかりました。

リモートフォルダーを監視する機会を与えてくれるシンプルなツールを使用した経験があり、何かが変更された場合はrsyncを実行します。

たぶん、rsyncのみを使用し、リモートフォルダーを新しいファイルのみと同期する必要がありますか?

アイデアをありがとう。

その間、私はこれをやりたい簡単なbashスクリプトをいくつか作成しましたが、宛先フォルダーから何かが削除され、この削除されたファイルを再度同期したくない場合にどうなるかという問題と戦っています。この問題を解決する方法はありますか?

#!/bin/bash

### Logs path
path="/var/log/compare"
log="compare.log"
listing1="listing1.log"
listing2="listing2.log"
### Path which will be monitored
destination="/path/to/destination/"
source="/path/to/remote/folder"


## Watching for content in source folder
ls -lh $source > $path/$listing1
### I`m checking if something was changed
        echo "$(date)" 'INFO' 'I will compare listing files' >> "$path/$log"
        if cmp -s "$path/$listing1" "$path/$listing2"
### Files are the same
        then
        echo "$(date)" 'INFO' 'Listings are the same' >> "$path/$log"
### Files are different
        else
        rsync -art $source $destination
        echo "$(date)" 'INFO' 'Finished synchronization' >> "$path/$log"
fi
cp $path/$listing1 $path/$listing2
4

1 に答える 1