我正在尝试用Go语言编写的保险丝来实现功能mkdir
,而我正在使用Bazil library。我已经成功实现了一个简单的只读fs,现在我希望能够在任何现有目录中调用mkdir
来创建一个新目录。
我已经确保所有现有目录都是可写的,[attr.Mode = os.ModeDir | 0777
)。现在,我刚刚添加了功能:
func (d Dir) MkDir(ctx context.Context, req *fuse.MkdirRequest) (fs.Node, error) {
dir := &Dir{name: req.Name, files: 0, inode: 10 /*a random inode*/,mode: os.FileMode(0777),nextdir: nil, nextfile: nil}
d.nextdir = dir
return dir, nil
}
在我自己的Bazil库hello fs example实现中。但这似乎没有任何区别。
[当我从终端呼叫mkdir new_dir_name
时,出现错误:“ mkdir:无法创建目录'new_dir_name':不允许操作”,即使我添加了mkdir
功能也是如此。
关于为什么会发生这种情况的任何见解,以及我应该在我的代码中添加哪些其他内容以使此工作正常进行,都很棒。另外,这是我的第一个stackoverflow问题,所以如果不能以明确的方式提出要求,对不起。
像这样的make目录的正确功能
func (d *Dir) Mkdir(ctx context.Context, req *fuse.MkdirRequest) (fs.Node, error) {
}