lsyncd - 特定のディレクトリを含め、残りを除外する方法

lsyncd - 特定のディレクトリを含め、残りを除外する方法

lsyncdプロセスにいくつかのディレクトリを含め、残りのすべてのディレクトリを除外したいと思います。

1つのディレクトリの下にあまりにも多くのディレクトリがありますmultisource。 lsyncdにディレクトリだけを含め、temp残りtemp1をすべて除外したいと思います。

/etc/lsyncd/lsyncd.conf.luaファイルで次のコードを試しました。

settings {
        logfile = "/var/log/lsyncd/lsyncd.log",
        statusFile = "/var/log/lsyncd/lsyncd.status"
}
sync {
        default.rsyncssh,
        source = "/var/www/html/multisource",
        host="user@<ip_address>",
        targetdir = "/var/www/html/multisource",
        delay     = 5,
        rsync = {
                perms = true,
                owner = true,
                group = true,
                --include = {"/temp", "/temp1"},
                --exclude = {"/*"}
        }
}

これについて考えていますか?

ベストアンサー1

フォルダ内のファイルとフォルダをコピーしているがコピーしたくないフォルダが/root/hive/dataあるとします。/root/hive/data/logs

ファイルを作成し/etc/lsyncd/lsyncd.excludeてコピーするときに無視するファイル内のフォルダ/ファイルを指定する必要があります。この場合、以下が/etc/lsyncd/lsyncd.exclude含まれます。

logs

相対パスを提供する必要があります。

sync{}のディレクティブは/etc/lsyncd.conf次のようになります。

sync {
default.rsync,
source="/root/hive/data",
target="***.***.**.***:/root/hive/data",
excludeFrom="/etc/lsyncd.exclude",

rsync = {
compress = true,
acls = true,
verbose = true,
owner = true,
group = true,
perms = true,
rsh = "/usr/bin/ssh"
}
}

おすすめ記事