我创建了aaa目录,但是他权限为什么是700
时间: 2024-03-05 07:53:12 浏览: 8
如果你使用上面的代码创建了目录 "/usr/local/land/cmap/1.0-RELEASE/aaa/",并且该目录的权限为 700,可能是因为你的系统默认 umask 值为 022。在 Linux 系统中,umask 值用于指定在创建新文件或目录时,系统应该屏蔽哪些权限位。默认情况下,umask 值为 022,表示系统会屏蔽其他用户的写权限和所有用户的执行权限。因此,当你使用上面的代码创建目录时,虽然指定了 rwxrwxrwx 权限,但由于 umask 的影响,最终实际权限为 rwx------,即 700。
如果你想要创建一个权限为 rwxrwxrwx 的目录,可以在创建目录之前先将 umask 值设置为 000,或者在创建目录时指定更明确的权限信息,例如:
```
Path directory2 = Paths.get("/usr/local/land/cmap/1.0-RELEASE/aaa/");
Set<PosixFilePermission> permissions = EnumSet.allOf(PosixFilePermission.class);
FileAttribute<Set<PosixFilePermission>> fileAttributes = PosixFilePermissions.asFileAttribute(permissions);
Path directory3 = Files.createDirectory(directory2, fileAttributes);
```
这样就可以创建一个权限为 rwxrwxrwx 的目录了。