2017-05-01 18 views
0

Linuxのファイルシステムフォルダ内のどのプロセス/ユーザがイメージを削除しているかを調べる方法を知りたいと思います。つまり、ファイルがランダムに削除されているフォルダがある場合は、削除するファイルを特定します。削除されたファイルの監視

はより正確には、私の問題は次のとおりです。

  1. 私の周りに100万画像のフォルダを持っています。
  2. これらはフォルダ構造内にあります。たとえば、すべての画像は「abaco.jpg」という名前で始まり、「media/a/b/abaco.jpg」のパスに入ります。これらの画像はバックエンド経由でアップロードされ、その後は決して削除されません。
  3. この特定のインフラストラクチャでホストされているこの特定のクライアントでは、画像はランダムに削除されています。イメージのフォルダ全体が欠落していることがわかります。たとえば、巨大なチャンクまたはフォルダ全体が削除されます。私は毎回約20%の見積りをしています。
  4. 現在、バックアップを復元していますが、最初は削除するものを見つけることが理想的です。ホスティング会社によれば、NASバックアップは正常に実行されており、問題や疑わしいプロセスはありませんが、画像を削除するプロセスはありません。
  5. 何が起こっているのかを見つけるために、このトラブルシューティングを開始するにはどうすればよいですか?

いくつかの他の情報:

  • このフォルダには、NFSを介して搭載されていると、実際のファイルはNASに座っています。私は はNASにアクセスできない、NFSが をマウントしたサーバにアクセスするだけです。私はこのNASで実行される命令を求めることができるかもしれませんが、どこから始めるべきかわかりません。
  • 私は自分自身でこのサーバー用のルートを持っていませんが、必要に応じて変更を行うルートアクセスを持っているホストプロバイダ をリクエストできます。
  • これはアプリケーションであり、他のいくつかのクライアントに展開されていますが、このインフラストラクチャ内にあるものを除き、そのような問題はありません。

どのようにこのような問題のデバッグを開始するためのアイデアですか?

ありがとうございました。

答えて

2

は、ディレクトリ

の変更を監視またはシステム上inotifywaitインストールするiwatchを使用して、ファイル

inotifywait -m -r -e delete dir_name 
にその出力をロギングすることで、ディレクトリの通知を待つためにそれを使用することができかもしれませ

と上記のファイルをログに記録して確認します。

通常、誰がいつファイルを削除するかを正確にチェックするのは非常に難しいです。

関連する問題