我已经安装的单个节点的多用户Hadoop集群。 在我的群,有一个负责运行群集(超级用户)的管理员用户。 所有其他用户都分配一个HDFS目录例如/ home / XYZ其中xyz是一个用户名。
在UNIX中,我们可以改变默认的主目录为/ etc / passwd文件的用户。 而在默认情况下,为用户登陆目录是主目录。
我该怎么做它在Hadoop中的HDFS文件系统。 我想举例来说,如果用户键入:$ hadoop的DFS在UNIX提示-ls。 它应列出由我分配的主目录的内容。
此外,HDFS目录由谁运行簇(hadoop的超级用户而非UNIX根),然后转移所有权给特定用户超级用户创建。
我不知道这是什么,可配置-在源DistributedFileSystem (线150)有getHomeDirectory,这似乎是硬编码的电话:
@Override
public Path getHomeDirectory() {
return makeQualified(new Path("/user/" + dfs.ugi.getShortUserName()));
}
你有两种可能的选择,如果你希望能够改变这一点:
- 提交门票的Hadoop要求一个新的功能- 请参阅此链接
- 自己修改源和跨群集重新编译+重新分配Hadoop的核心罐子(方便地在单节点集群伪)
塔潘,每个用户都拥有位于/用户/用户名HDFS一个“家”目录。 例如,如果你输入的Hadoop FS -ls,它会带你当前HDFS用户目录。 我有两个用户检查了单。
来到类Unix文件(/ etc / passwd文件)的设置,我不知道。 但是,这真的很有趣。 克里斯说,我们可以添加新的功能一样,引入用户管理-site.xml中类似的配置文件,并添加组,用户对目录及其权限,主目录等真的intertesting,我们有Ø试试这个...