rsync はリモート サーバー ファイルを増分的に同期します。
rsync がファイルを同期するには 2 つの方法があります。1 つはデーモン メソッド (rsync デーモン) です。もう 1 つは、デーモン メソッド (rsync デーモン) です。リモート シェル (rsync リモート シェル) を使用します。
デーモン メソッド このメソッドは、設定ファイルを使用してデーモン プロセスを有効にする必要があります。
<code>rsync [OPTION] [email protected]::src destrsync [OPTION] src [email protected]::dest</code>
リモート シェル メソッド。このメソッドでは、設定ファイルやデーモン プロセスを使用する必要はありません。
<code>rsync [OPTION] [email protected]:src destrsync [OPTION] src [email protected]:dest</code>
デーモン方式は設定ファイルやデーモンプロセスの設定が面倒なので、以下のようにリモートシェル方式で同期することにしました。
<code> rsync -avr --delete [email protected]:/export/test/htdocs/files/ /export/test/htdocs/files/</code>
ここでパラメータは avr --delete はそれぞれ
<code>-a 归档(archive)模式,以递归方式传输文件,并保持文件属性-v 输出同步的详细信息(verbose)-r 对子目录进行递归模式处理(recursive)--delete 删除源(SRC)中没有目标(DST)中有的文件</code>
を表します。すべてが正常であれば、上記の同期コマンドを実行すると、リモート マシンで yanruitao ユーザーのパスワードを入力するように求められます (初回は、関係を確立するかどうかを尋ねられます( だったような気がします。詳細は忘れました)。Enter キーを押すだけです)、実行後、ルールに従って同期されます。
しかし、crontab タスクを追加して毎日 2 時に増分同期を実行したいのですが、この時点では信頼を確立する必要があります。 2 台のマシン上の関係
信頼関係を確立する前に、まず公開鍵と秘密鍵に基づく暗号化と認証を確認します
下の写真は盗用です、笑 この写真を使用して認証プロセスを理解するのは完璧です:
<code>消息-->[私钥]-->签名-->[公钥]-->认证私钥数字签名,公钥验证</code>
下の写真も盗用です(写真があるとわかりやすいです) 以下はアリスが送信するものです。対称鍵テクノロジー ボブへの情報:
<code>消息-->[公钥]-->签名后的消息-->私钥-->解密后的消息公钥加密,私钥解密</code>
公開鍵と秘密鍵に関する上記の知識を理解した上で、2 つのホスト間の信頼関係を確立しましょう。
に yanruitao、192 ドット 168 ドット 1 ドット 101yanruitao という 2 つのマシンがあり、100 と 101 の信頼関係を確立するとします (つまり、100 も同様です) 101 にログインするときにパスワードを入力する必要はありません)。このとき、秘密鍵署名プロセスが使用されます:<code>ssh-keygen -t rsa#执行完之后会在家目录下的.ssh文件夹下生成id_rsa、id_rsa.pub两个文件,后者是公钥。scp .ssh/id_rsa.pub [email protected]:/home/yanruitao/#scp同样是通过remote shell的方式传送文件,回车之后会提示输入密码,此时#还未建立信任关系,因此需要输入密码。确认100的公钥发送给101</code>
<code>#将刚才传送的100机器的公钥写入101yanruitao及目录下的.ssh/authorized_keys文件cat id_rsa.pub >> .ssh/authorized_keyschmod 700 ~/.sshchmod 600 ~/.ssh/authorized_keys[email protected]??任关系</code>
<code>0 */2 * * * rsync [email protected]:/export/wwwroot/hotdocs/files/ /export/wwwroot/hotdocs/files/#设置完成,每天02:00分会执行一次增量同步</code>
もちろん、実際に操作すると問題が発生する可能性があります。私が実行したとき、2 台のマシンのユーザー名は異なっており、1 台は yanruitao で、もう 1 台は でした。 mywife (笑、笑わないでください) yanruitao と mywife の履歴書の信頼関係では、この時点で、上記の手順を実行して mywife ホーム ディレクトリの信頼関係を再度確立する必要があります。もう 1 つの問題は、mywife マシン上の /export/wwwroot/htdocs/files/ フォルダーの所有者が mywife である必要があることです。
<code>#修改文件夹所有者为mywifesudo chown mywife:users /export/wwwroot/htdocs/files/</code>
そうでない場合、エラーが報告される可能性があります (具体的なエラーは忘れましたが、会社が遭遇しました)、同期には影響しないようですが、$? が 23 を返し、以降の動作に影響が出ますので、注意してください。
http://www.williamlong.info/archives/837.html
http://www.cnblogs.com/ymy124/archive/2012/04/ 04/2432432.html
http://www.zhihu.com/question/25912483
この記事の著作権は著者 ifforever (