fanotifyをAndroidで使用しようとしています。これを実行可能ファイル(ndkでコンパイル)でアーカイブしたいと思います。私はfsmon(fanotifyシステムコールを呼び出す小さなアプリケーション)を使ってモニターを起動しています。しかし、(rootとして根付いたデバイス上の)ファイルを実行する上で、私はエラー次取得しています:Android fanotify_init:機能が実装されていません
generic_x86:/data/local/tmp # ./fsmon -B fanotify /storage/emulated/0/
fanotify_init: Function not implemented
fanotifyは、カーネルのバージョン(Androidの5+で出荷されます)> 2.6.37で提供されています。
私はx86エミュレータ(Android 7)とCM13(両方のルート)を搭載したSamsung I9300 armeabi-v7a(Android 6)で試してみました。 x86エミュレータの カーネルのバージョン:3.4.67+
とサムスンデバイスの:3.0.101-CM-g9c98896
は、その後、私は/goldfish/fs/notify/fanotify/Kconfig
でのx86エミュレータ金魚のカーネルファイルに見ていた:だから
config FANOTIFY
bool "Filesystem wide access notification"
select FSNOTIFY
select ANON_INODES
default n
---help---
Say Y here to enable fanotify suport. fanotify is a file access
notification system which differs from inotify in that it sends
an open file descriptor to the userspace listener along with
the event.
If unsure, say Y.
config FANOTIFY_ACCESS_PERMISSIONS
bool "fanotify permissions checking"
depends on FANOTIFY
depends on SECURITY
default n
---help---
Say Y here is you want fanotify listeners to be able to make permissions
decisions concerning filesystem events. This is used by some fanotify
listeners which need to scan files before allowing the system access to
use those files. This is used by some anti-malware vendors and by some
hierarchical storage managent systems.
If unsure, say N.
、私はYの両方に設定、make clean
そしてカーネルを再コンパイルしてください - しかし前のような同じ問題..私は何か見落としましたか?