[英]How to get mount point for a given path in custom linux kernel module
[英]Linux Kernel Module that can list files and folders inside a given path
我想知道是否可以从Linux内核中列出给定文件夹内的文件和文件夹。 我敢打赌有办法。
我已经在网上进行搜索,并给出了一些照片,但仍然无法做到。
谢谢!
回应您的评论:您的问题不是关于文件读取,而是关于目录的条目。 关于您的最后一句话:是的,每个文件系统都实现readdir()
函数,因此它将独立于文件系统。
我认为您需要执行以下步骤:
研究,如何编写内核模块。 网上有很多教程,包括带注释示例的分步教程。
编写一个简单的模块,在其初始化函数中, printk()
s是一些简单的文本。
研究如何从内核模块调用系统调用。 从用户空间来看,它可能不那么简单,但是几乎可以肯定。
通过路径传递到模块参数中目录的最简单方法。 Linux内核模块可以具有多个参数,这些参数的处理可以很好地实现自动化(实际上,您可以将参数名称直接绑定到模块中的静态变量)。
模块可以调用系统调用并获得输入后,现在可以使用opendir()
调用在其init函数中打开此目录。 然后读取其内容(请参阅readdir()
),最后使用printk()
输出结果。
可能会有一些障碍,例如,您可能无法使用来自模块init函数的syscall或类似的调用,但是它们都不难。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.