在 CentOS 上创建 HDFS 用户,通常有两种含义,下面分别说明:
HDFS 服务(如 NameNode、DataNode)一般用一个专用 Linux 用户运行,常见的是 hdfs 用户。
useradd -m hdfs
passwd hdfs
# 加入 hadoop 组(如果已存在)
groupadd hadoop
usermod -aG hadoop hdfs
# 查看用户
id hdfs
HDFS 本身 没有独立的用户系统,它直接使用 Linux 用户名作为 HDFS 用户。
su - hdfs
hdfs dfs -mkdir /user/zhangsan
hdfs dfs -chown zhangsan:hadoop /user/zhangsan
前提:Linux 中已存在
zhangsan用户
su - zhangsan
hdfs dfs -put file.txt /user/zhangsan/
在 hadoop-env.sh 中:
export HDFS_NAMENODE_USER=hdfs
export HDFS_DATANODE_USER=hdfs
export HDFS_SECONDARYNAMENODE_USER=hdfs
不是必须,但强烈建议使用专用用户,避免用 root 启动 HDFS。
创建用户命令一样,CentOS 8 可用 adduser(软链接到 useradd)。
如果你是指 “怎么在 Hadoop 集群里新建一个能用 HDFS 的账号”,可以告诉我你的集群版本(CDH / HDP / 原生 Hadoop),我可以给你更具体的步骤。