1

本番環境のデータを開発用にミラーリングするための適切なアプローチは何ですか? いくつかのスクリプトが定期的に実行される多くの smb 共有をマウントする 1 つの運用サーバーが配置されています。

これで、開発用に別のサーバーができました。これをテスト用に分けておきます。それらすべてをコピーせずに、これらすべての smb 共有からサンプル データを取得するにはどうすればよいですか? 開発サーバーはそのすべてのデータを保持できなかったので、定期的に実行して各ディレクトリから最初の X ファイルをコピーするだけのものを探しています。

目標は、開発サーバーを「安全」にし、テスト中に同じ共有をマウントしないようにすることです。

4

1 に答える 1

0

私が持っているのが好きな開発環境の場合:

  • 既知の良好なデータ
  • 既知の (構築された) 不良データ
  • ライブ データのランダム サンプル

「構築された」とは、特定の方法でまとめたデータであるため、それがいかに悪いかを正確に知っています。

あなたの場合、良いデータと悪いデータを用意してから、小さな Bash スクリプトを記述して、SMB 共有からローカルの開発マシンにデータをコピーします。おそらく、ls -t各共有で a を実行して、最新のファイルを取得し、その出力をファイルに保存し、headまたは他のユーティリティを使用して最初の N 行を読み取り、それらのファイルを開発マシンにコピーします。

疑似コード

clear data directory
copy known good data from some local directory
copy known bad data from some local directory
begin loop: for every SMB share
   run `ls -t` and output the results to a file
   run `head` or some other utility to get the first N lines (ie file names)
   copy those files from the SMB share to my local data directory
end loop

この小さなスクリプトを必要な頻度で実行するように cron を設定できます。

于 2013-04-15T17:11:29.877 に答える