1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

NetBSD-10ではfilemon機能が削除されていました

Last updated at Posted at 2025-12-04

NetBSD Advent Calendar 2025 4日目の記事です。今日はファイルの変更イベントを監視する filemon について改めて解説しようと思います。

filemonとは?

NetBSD Advent Calendar 2021filemon の機能とサンプル例を紹介していました。

記事を書いた当時のfilemon(4)をみると、C言語のサンプルがあるのですがSEGVでクラッシュしてしまう状態になっていました。NetBSD-10のリリースノートをみるとドキュメント回りも色々と拡充されているようなので、現在の filemon がどうなっているか改めて調べてみました。

NetBSD-10においてfilemonのマニュアルページが見当たらない…?

が、NetBSD-10のfilemon(4)を参照するとマニュアルが存在していません…。ちょっとNetBSD-9とNetBSD-10の配布物を確認してみます。

$ # NetBSD-9の配布物にはfilemon関連のファイルが含まれている。
$ tar ztvf base-nbsd9.tar.xz | grep filemon
drwxr-xr-x  0 root   wheel        0  4月 20  2024 ./usr/include/dev/filemon
$
$ # NetBSD-10の配布物にはfilemon関連のファイルが存在していない。
$ tar ztvf base-nbsd10.tar.xz | grep filemon | wc -l
       0

どうやらNetBSD-10には filemon 関連のファイルが含まれていないようです。これは一体…?

セキュリティアドバイザリが出ていました

filemonに関してはセキュリティアドバイザリが出ていました…。

セキュリティアドバイザリの"Technical Details"では以下のような解説が行われていました。

  • filemon は実験的なモジュールという位置づけ。
  • そのため、一般的な仕様には適していない。
  • filemonモジュールは /dev/filemon が開かれると自動ロードされる可能性がある。
  • また、filemonモジュールは書き込みチェックが不足しており、システム内の任意のファイルを上書きすることが可能。
  • くわえて、filemonによるファイルシステム監視は競合状態を生じやすく、モジュールのアンロード中にシステムコールが使用されるとランダムなクラッシュを引き起こす可能性がある。

まさか実験的なモジュールだったとは…。と思いつつ、リリースノートには記述がありませんでしたが、これらの理由により、NetBSD-10以降では filemon がまるごと除去されたということかと思います。

まとめ

セキュリティ上の理由により、 NetBSD-10以降では filemon 機能が削除されているという話をしました。個人的には filemon の機能は便利だと感じていたのですが、代替機能を探すことになりそうです。

そして、NetBSDの変更点とセキュリティアドバイザリは定期的にチェックするのが良さそうです。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?