已通過org.apache.hadoop.fs.FileSystem.get(Configuration conf)
獲取以下片段中使用的fileSystem對象。下面通過Hadoop FileSystem mkdirs()在通過時創建具有755權限的目錄777
FsPermission對象已通過FsPermission.getDefault()
獲得這777
public int mkdirs(Path f, FsPermission permission) {
try {
return fileSystem.mkdirs(f, permission) ? 0 : 1;
} catch (IOException e) {
LOG.error("Failed to execute 'mkdirs': " + e.getMessage());
}
return 1;
}
創建但是生成的目錄有755允許通過777
可能是什麼不對勁這裏,即使?
小小的說明:在向HDFS寫入文件時,客戶端在OS層處理umask並不是一個因素。相反,配置屬性'fs.permissions.umask-mode'控制着umask。它的行爲與傳統的POSIX umask類似,默認值設置爲022,所以這個答案是正確的。謝謝! –