我正在创建一个Android应用程序,它允许用户创建加密的LUKS分区,然后将它们挂载到外部存储器上的给定目录。 为了使分区可用,我使用Busybox mkfs.ext2命令创建一个ext2文件系统。一旦用户尝试在分区的根目录下创建文件/目录,就会出现此问题。由于某种原因,无法通过Java创建文件,因为“File.mkdirs()”方法失败。但是,可以通过命令行创建此文件。并且只有在分区的根目录时才会出现此错误(即,如果我通过命令行创建文件夹,则可以通过Java在该文件夹中创建文件)。此外,如果我创建一个vfat文件系统而不是ext2,我可以创建一个文件。
非常感谢任何帮助。
哈利
修改
固定。我正在以root身份挂载文件系统
答案 0 :(得分:0)
我对这个问题的最终解决方案是创建一个vfat文件系统而不是ext2,因为vfat没有权限等...这对我有用,因为我不需要额外的权限安全性。但是,如果您需要一个ext2文件系统,您需要以root身份挂载但希望其他用户可以使用它,我建议查看mount ownmask选项(man mount)。