0

在目录中是否存在可以工作但失败的情况。touchmkdir

我知道这两个调用都涉及写入inode父目录。因此,如果 touch 有效,它不是自动意味着 inode 是可写的,因此mkdir 不可能失败。

这是Android(我只听说过一个报告,实际上并没有看到这种情况)并且命令是从终端模拟器运行的,在/system目录中(在请求之后su),但这不应该对IMO产生影响。


编辑:mkdir 失败了"permission denied"

4

2 回答 2

2

我可以想到几种可能发生这种情况的方法:

1)如果你已经达到了一个目录下的最大子目录数(一般在32000左右),你就不能了mkdir,但是你可以去touch一个文件。

2)如果你的磁盘空间非常低,你将无法做到,mkdir因为它需要 4K,但你可以保存touch一个文件。

于 2012-12-10T17:14:14.507 回答
1

也许您对父目录没有写权限?如果您拥有这些文件或对它们具有写权限,您仍然可以访问目录中的touch 现有文件。(但是,对不存在的文件调用 touch 仍然会失败,因为该目录是只读的。)

stat父目录和touched 文件的输出是什么?

于 2012-12-10T20:35:00.563 回答