構築するためにLinuxのrsyncの環境(非ROOTを構築)
環境の準備
-
rsync
ダウンロードhttps://rsync.samba.org/ftp/rsync/src/rsync-3.1.3.tar.gz
-
inotify
ダウンロードhttps://github.com/rvoicilas/inotify-tools/archive/3.20.1.tar.gz
-
環境情報
ここでは、2台のサーバーの構造は、それぞれ、ホスト名、IPアドレス、状態、両方のサーバーはCentOSの6.9は、
Webサーバ:29.2.70.75
バックアップサーバー:29.2.70.76
インストールの準備
プライマリサーバー
サーバー(すなわち、他のマシンとの同期の端部)は、インストールする必要があるrsync
とinotify
、サーバーなどのWebサーバーは、バックアップサーバにファイルを転送します。
-
rsyncのをインストールします。
1. tar xvzf rsync-3.1.3.tar.gz 2. cd rsync-3.1.3 3. ./configure --prefix=/home/tomcat/opt/rsync 4. make && make install
-
パスワード・ファイル認証を作成します。
1. cd /home/tomcat/opt/rsync 2. echo "rsync-pwd" > rsync.passwd
これはrsyncの-PWDがrsync.passwd名は、独自に設定することができ、自分のパスワードを設定することができます。
パーミッション600を変更します
chmod 600 rsync.passwd
。
-
-
inotifyのインストール
1. 安装autoconf,automake,libtool等工具,过程略 2. tar xvzf inotify-tools-3.20.1.tar.gz 3. cd inotify-tools-3.20.1 4. ./autogen.sh 5. ./configure --prefix=/home/tomcat/opt/inotify 6. make && make install
-
rsyncの複製スクリプトの作成
あなたが変更した場合、この関数は、内容のディレクトリ/ home / tomcatには/ tmpのサーバ側に主である(いずれかのファイルを削除、変更、追加するために)クライアントの/家にinotifyを経由して監視することができ、およびrsyncのリアルタイム同期によって/次のようにTomcatの/ tmpが、シェルスクリプトを介して達成され、以下、スクリプトは次のとおりです。
#!/bin/bash host=29.2.70.76 src=/home/tomcat/tmp/ des=web user=tomcat /home/tomcat/opt/inotify/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f%e' -e modify,delete,create,attrib $src | while read files do /usr/bin/rsync --port=30001 -vzrtopg --delete --progress --password-file=/home/tomcat/opt/rsync/rsync.passwd $src $user@$host::$des echo "${files} was rsynced" >>/home/tomcat/rsync.log 2>&1 done ##如果不需要保留属性,或者保留属性需要其他权限可以去掉-vzrtopg中的pg选项
このrsync.shという名前のスクリプトは、自分の指定したディレクトリに、例えば、私は下の/ home / Tomcatを置く、および764へのアクセス権を変更し、特定の操作は次のとおりです。
chmod 764 rsync.sh
その後、スクリプトを実行しますsh /home/tomcat/rsync.sh &
。ノートの後、それ以外の場合は時々、フルスクリーンで表示され、rsync.shスクリプトを起動し、唯一のrsync rsyncのバックアップサーバーをインストールして起動し、心に留めておきます。そうでない場合は、次のようなエラー:
rsync: failed to connect to 29.2.70.76: Connection refused (111) rsync error: error in socket IO (code 10) at clientserver.c(107) [sender=2.6.8]
また、(あなたが権限を持っている場合)、ブートエントリにこのスクリプトを追加することができます。
echo "/tmp/rsync.sh" >> /etc/rc.local
バックアップサーバー
-
rsyncのインストール(バックアップサーバーを唯一のrsyncをインストールする必要があります)
同上
-
ユーザーとパスワードの認証ファイルを作成するには
echo "tomcat:rsync-pwd" > /home/tomcat/opt/rsync/rsync.passwd
、およびパスワードファイルのバックアップサーバの確立、ユーザー名とパスワードであり、ウェブ端の確立にパスワードファイル、パスワードのみ、ないユーザー名があることを覚えておいてください
chmod 600 rsync.passwd
パスワードファイルをコピーするために、600件の権限を。 -
rsyncの設定ファイルを確立し、/ホーム/ tomcatには/ opt / rsyncの/ bin /ディレクトリに保存します
use chroot = no max connections = 10 strict modes = yes pid file = /home/tomcat/run/rsyncd.pid lock file = /home/tomcat/run/rsync.lock log file = /home/tomcat/logs/rsyncd.log port = 30001 #需要和主服务保持一致 [web] path = /home/tomcat/tmp/ # 存放文件的目录 comment = web file ignore errors read only = no write only = no hosts allow = 29.2.70.75 hosts deny = * list = false #auth users = webuser secrets file = /home/tomcat/opt/rsync/rsync.passwd
前記ウェブサーバは、参照用の設定で自分のサーバ構成よりも多くの認証モジュール名、およびそれを必要とするプライマリサーバ、サーバです。
-
スタートのrsync
/home/tomcat/opt/rsync/bin/rsync --daemon --config=/home/tomcat/opt/rsync/bin/rsync.conf
通常のマスタ・ファイル・サーバは、我々はすべての上に同期させることができ、変更されています。
注意事項
- あなたはポートを変更しない場合、デフォルトのポートは873ですので、デフォルトのポートは、rootユーザーで起動する必要があります。