gpt4 book ai didi

c - Linux 内核模块——创建目录

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:47:04 25 4
gpt4 key购买 nike

我在 linux 内核模块中创建目录时遇到了问题。

我想要的:在内核模块中创建一个目录。

这是我的实际代码:

struct file *fp = (struct file *) NULL;
fp = filp_open("/home/testdir", O_DIRECTORY|O_CREAT, S_IRUSR);

但它创建的是文件而不是目录。

我尝试在没有标志“O_DIRECTORY”的情况下使用与上面相同的代码:

struct file *fp = (struct file *) NULL;
fp = filp_open("/home/testdir", O_CREAT, S_IRUSR);

结果与之前的结果类似。

我不明白这种行为。我做错了什么?

编辑 1:我在 Raspberry PI、Raspbian、内核版本:4.4.43-v7 上编码

最佳答案

我自己弄的。解决方案是:

struct file *fp = (struct file *) NULL;
fp = filp_open("/home/testdir/", O_DIRECTORY|O_CREAT, S_IRUSR);

注意路径末尾的“/”。

感谢@all 的尝试!

关于c - Linux 内核模块——创建目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41850722/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com