使用内核模块挂载文件系统

时间:2019-02-23 06:21:22

标签: c linux linux-kernel

是否可以通过Linux内核模块挂载linux文件系统(ext4,ext3或btrfs)?
我想写内核模块可以挂载文件系统,但是不能在模块源代码中使用<sys/mount.h>,因为这是用户空间标头。
注意:我使用带有内置ext4,btrfs文件系统的自定义内核(未模块化)。

1 个答案:

答案 0 :(得分:0)

<sys/mount.h>是用户空间标头,您不能将其用于内核模块。

用于装载文件系统的内核API为ksys_mount()do_mount(),但未导出到模块。如果您真的想从内核模块挂载(并且修改内核不是您的选择),那么您将不得不在代码中复制ksys_mount()路径。