• 締切済み

カーネルモジュールでファイル書き込み履歴を出力したい

以下のことをモジュールで(もしくはカーネルを改変して)実現したいんですがモジュール作成は初めてなので困っています。 ・HDDに書き込み処理が生じた際にそのファイル名(存在するディレクトリも含む)を出力したい。 ・書き込みが生じた日付と時間も出力したい。 現在の考えですと 1. 書き込みの際、/proc/driver/rtcのデータを拾ってprintkで出力 2. printkでファイル名を出力 3. それらをsyslogで拾う 何分モジュール作成、Linux共に初心者ですので見当違いなことを言っているかも知れません。 もう少しスマートな方法やモジュール作成のヒントとなることがありましたらご教示下さい。 以下環境です。 OS : CenOS 5.4 64bit CPU : Athlon64x2 5000 kernel : 2.6.18-164.6.1.el5

みんなの回答

回答No.2

やりたいことがファイル監査機能の実現だとすると、自作しなくてもLauS(Linux Auditing System)を使用すればできると思います。検索してください。

noname#262995
質問者

お礼

お礼が遅れて申し訳ありません。 貴重なご意見ありがとうございます。 さっそく調べてみます。

  • dev_null
  • ベストアンサー率67% (37/55)
回答No.1

この手の質問に解答がつくことはないと思いますよ。 それに、どれだけ調査したのか分かりませんが 1.syslogで拾うなら時間は出力はsyslogで補完できないのか? 2.HDDの書き込み処理はカーネル本体が行ってるのか? 3.ファイル名を管理してるのかカーネル本体かファイルシステムか? 4.I/Oまわりをハックして安定して動作するのか? どれだけ大変か想像もつきませんね。 本気でやるならこんなところで質問してないでカーネルソースを見てください。

noname#262995
質問者

お礼

回答ありがとうございます。 何かヒントをと思ったんですが、私には荷が重過ぎるようですね。 もう少し考えてみます。