lsyncd-マルチマシンリアルタイム同期ファイル神器
lsyncdは、リアルタイム、双方向、マルチマシンをサポートするマルチモードファイル同期ツールです.
Lua言語を用いてinotifyとrsyncツールをカプセル化し,Linuxカーネル(2.6.13以降)のinotifyトリガメカニズムを採用し,rsyncにより差分同期を行い,リアルタイムの効果を達成した.
インストール
ソース・ファイル・サーバにインストールするには、次の手順に従います.
コンフィギュレーション
lsyncdプライマリプロファイルは、
規則を無視
ファイルを構成するには、同期されたファイルまたはフォルダを無視する必要があります.excludeFromオプションでは、excludeタイプの構成ではプロファイルを使用しません.プロファイルが
非公開ログイン
毎回パスワードを手動で入力しないように、SSH非密登録に設定します.
開始
リファレンス 公式Wiki lsyncdリアルタイム同期構築ガイド-rsync+inotifyの代わりに
原文住所:
https://shockerli.net/post/li...
詳細については、個人ブログにアクセスしてください.
https://shockerli.net
Lua言語を用いてinotifyとrsyncツールをカプセル化し,Linuxカーネル(2.6.13以降)のinotifyトリガメカニズムを採用し,rsyncにより差分同期を行い,リアルタイムの効果を達成した.
インストール
ソース・ファイル・サーバにインストールするには、次の手順に従います.
yum -y install lsyncd
コンフィギュレーション
lsyncdプライマリプロファイルは、
/etc/lsyncd.conf
に配置されていると仮定します.settings {
nodaemon = false,
logfile = "/var/log/lsyncd.log",
statusFile = "/var/log/lsyncd.status",
inotifyMode = "CloseWrite",
maxProcesses = 8
}
-- sync, source, target, , 。
sync {
default.rsyncssh,
source = "/home/wwwroot/web1/",
host = "111.222.333.444",
targetdir = "/home/wwwroot/web1/",
-- , table
-- excludeFrom = "/etc/lsyncd_exclude.lst",
exclude = {
".svn",
"Runtime/**",
"Uploads/**",
},
-- maxDelays = 5,
delay = 0,
-- init = false,
rsync = {
binary = "/usr/bin/rsync",
archive = true,
compress = true,
verbose = true,
_extra = {"--bwlimit=2000"},
},
}
規則を無視
ファイルを構成するには、同期されたファイルまたはフォルダを無視する必要があります.excludeFromオプションでは、excludeタイプの構成ではプロファイルを使用しません.プロファイルが
/etc/lsyncd_exclude.lst
に配置されているとします..svn
Runtime/**
Uploads/**
非公開ログイン
毎回パスワードを手動で入力しないように、SSH非密登録に設定します.
開始
lsyncd -log Exec /etc/lsyncd.conf
リファレンス
原文住所:
https://shockerli.net/post/li...
詳細については、個人ブログにアクセスしてください.
https://shockerli.net