ユニバーサルデバッグ/ロギング/トレースファイルシステムディレクトリとファイルアクセス? [コピー]

ユニバーサルデバッグ/ロギング/トレースファイルシステムディレクトリとファイルアクセス? [コピー]

私の特別な問題は次のとおりです。たとえば、gitUbuntu 14.04のローカルインストールでテストするサーバーでこれを設定しようとします。 HTTPではうまくできますが。apachegit clonegit pushinsufficient permission for adding an object to repository database ./objects

原則として、これをデバッグするために使用できましたが、これとすべてを実行するstraceので、どのプロセスを実行するのかわかりません。さらに、最終タスクを実行したいユーザーが誰であるかさえわかりません。私が間違いなく知っている唯一のことは、git repoディレクトリにアクセスしておそらくそこにファイルを生成することです。gitapachestrace./objects

だから私はディレクトリへのアクセスを「受信」し、この例では疑似コードでstdoutへの各アクセスを印刷/記録するように設定できるプログラムがあれば最も簡単な方法になると思いました。

$ ./traceDirectoryAccess --path /path/to/mygitrepo/objects
Listening for accesses on /path/to/mygitrepo/objects ...
Sat Apr  9 17:53:42 CEST 2016 - pid 1234, user myName (uid 1002) did:
 > create file /path/to/mygitrepo/objects/somefile
 > result: permission DENIED
...

そこにそのようなものはありますか?プログラム自体がない場合は、いくつかのカーネル機能(ファイル/sys/kernel/debug/や類似の機能を介して?)があるかもしれません。

答え1

いいですね。次のサイトで答えを見つけました。プログラムがアクセスするファイルのリスト利用できることを説明します。ロギングファイルシステムまたはLinux監査サブシステム

関連情報