カーネル モジュール (Linux では C) を作成していますが、その中の他のファイルのアクセス許可を変更したいと考えています。解決策はありますか?私はカーネルにいるので、chmod syscallを使用できません...助けてくれてありがとう
これは私の Makefile です:
> obj-m += ca.o
>
> all:
> make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
>
> clean:
> make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
そして、これは私のコードです:
> #include <linux/string.h>
> #include <linux/mm.h>
> /* Snip, tons of includes (all of them :))*/
> #include <linux/delay.h> .... int procfile_write(struct file *file,
> const char *buffer, unsigned long
> count,
> void *data) { ... sys_chmod(path, per); ... } ...
作るときに警告が表示されます:
WARNING: "sys_chmod" [file] undefiened
モジュールを「sudo insmod」でロードすると、次のエラーが発生します。
Unknown sybol in module
このエラーは、特にカーネル モジュールで発生するようです。何か案が?再びありがとう!