0

私はいくつかの異なる Linux サーバーを持っていますが、それらはすべて基本的にお互いのミラーです。ただし、それらの一部は同期していません (マシン 1 のファイル A はマシン 2 のファイル B とは異なります)。

私は、特定のディレクトリを体系的に調べ、異なるマシン内の対応するファイルを相互に比較し、意味のあるレポートを生成するスクリプト (shellまたはのみ) を設計中です。Perl後で、ファイルの同期を試みます。

これまでのところ、これにアプローチする方法についての私の考えは次のとおりです。

  1. sftp ファイルを/tmpローカルにコピーして diffを作成
  2. を使用sshしてdiff
  3. 使用してrsync

私の質問は次のとおりです。異なるマシンにある 2 つのファイルを体系的に比較するための最良の方法は何ですか (ただし、ディレクトリ構造は似ています)。役立つ可能性のある組み込みの Perl ユーティリティはありますか?

4

4 に答える 4

0

私は同様のツールに取り組んでいました(これは にありましたpython)。それが行ったことはcron、夜の特定の時間にジョブを実行することでした。これにより、tar bzippedファイルが1つのサーバーに移動し、ディレクトリが抽出され、再帰が実行diffされます。次に、diff出力をいくつかのスクリプトで実行し、ハンク (行/行など) をpython分析して変更量を把握しました。diff+!

Perlまたはにビルド済みのモジュールがあるかPythonどうかはわかりませんが、そのうちの 1 つでいくつかのヘルパー ユーティリティが確実に利用できる可能性があります。

于 2013-07-09T06:43:43.477 に答える