创建hadoop用户创错地方了

author author     2023-03-27     455

关键词:

说明:在安装好Centos系统后,用root创建一般用户hadoop,在hadoop用户下搭建Hadoop集群,故很多文件的路径均为/home/hadoop…下面介绍一般步骤:

1.创建一批普通用户,如test01、test02…并为其设置密码,命令如下:

useradd test01 创建用户
passwd test01 为test01设置密码
1
2
1
2
2.把该批普通用户加入hadoop用户组

gpasswd -a test01 hadoop 把用户test01加入hadoop用户组
1
1
注:在文件/etc/passwd中记录着系统所有的用户;在文件/etc/shadow中记录着所有用户的密码,并一一对应;在文件/etc/group中记录着所有的用户组。

3.由于在/home/hadoop/.bashrc中配置了相关的环境变量,在启动spark-shell、hive、hbase时不需要加入相关路径,为了便于普通用户test01等的操作,在test01等用户的.bashrc文件中配置相关环境变量,并用source ~./bashrc使其生效。

4.按照上述步骤设置后,可以正常启动spark-shell与hbase shell,但启动hive时出现报错:

Permission denied:user=test01,access=EXECUTE,inode="/tmp/hive":hadoop:supergroup:drwxrwx---
1
1
出现这个问题的原因是在hdfs上目录/tmp/hive的所有者为hadoop,所属用户组为supergroup,而相对于该目录用户test01属于其他用户,不具有任何权限,这里报错是不具有EXECUTE权限,要想解决这个问题,需要修改/tmp/hive的权限,命令如下:

hdfs dfs -chmod 777 /tmp 修改/tmp的权限
1
1
再次启动hive便不会再报该错误。

5.在hadoop用户上可以正常运行如下程序,但是在test01用户登录运行时抛出异常

hadoop jar hadoop jar /home/hadoop/hadoop2.7.1/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar wordcount /test/input /test/output
1
1
注:这里运行的是wordcount示例,/test/input为数据所在路径;/test/output为输出结果目录,运行时自动创建。
在test01用户上执行该程序时抛出如下异常:
这里写图片描述
出现这个异常的原因是:

原来mapreduce.jobhistory.address 和mapreduce.jobhistory.webapp.addres 这两个address的地址使用的是CDH默认的配置值,这里需要改成hostname,这样可能就是原来的位置不对造成的。
这里参考了(http://blog.csdn.net/wjcquking/article/details/41242625)
发现需要在hadoop的配置文件mapred.site.xml中添加如下内容:

</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value> #master为hostname
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
<property>
<name>yarn.app.mapreduce.am.staging-dir</name>
<value>/user</value> #/user为hdfs上的一个目录
</property>
1
2
3
4
5
6
7
8
9
10
11
12
13
1
2
3
4
5
6
7
8
9
10
11
12
13
在mapred.site.xml中添加如下内容后,把该文件发送到集群其余的机器;在hdfs上创建/user并修改其权限,使得用户test01对其有写权限。由于程序运行时要在hdfs上自动创建/test/output结果目录,则用户test01要对hdfs有写权限,这里为了便于操作,修改hdfs权限为777.
至此,wordcount示例可以正常运行。
参考技术A 你好,到后台的资料中进行修改,重新设置一下就好了!很高兴为你解答 参考技术B 你好,到后台的资料中进行修改,重新设置一下就好了! 参考技术C 说明:在安装好Centos系统后,用root创建一般用户hadoop,在hadoop用户下搭建Hadoop集群,故很多文件的路径均为/home/hadoop…下面介绍一般步骤:1.创建一批普通用户,如test01、test02…并为其设置密码,命令如下:useradd test01 创建用户passwd test01 为test01设置密码12122.把该批普通用户加入hadoop用户组gpasswd -a test01 hadoop 把用户test01加入hadoop用户组11注:在文件/etc/passwd中记录着系统所有的用户;在文件/etc/shadow中记录着所有用户的密码,并一一对应;在文件/etc/group中记录着所有的用户组。3.由于在/home/hadoop/.bashrc中配置了相关的环境变量,在启动spark-shell、hive、hbase时不需要加入相关路径,为了便于普通用户test01等的操作,在test01等用户的.bashrc文件中配置相关环境变量,并用source ~./bashrc使其生效。4.按照上述步骤设置后,可以正常启动spark-shell与hbase shell,但启动hive时出现报错:Permission denied:user=test01,access=EXECUTE,inode="/tmp/hive":hadoop:supergroup:drwxrwx---11出现这个问题的原因是在hdfs上目录/tmp/hive的所有者为hadoop,所属用户组为supergroup,而相对于该目录用户test01属于其他用户,不具有任何权限,这里报错是不具有EXECUTE权限,要想解决这个问题,需要修改/tmp/hive的权限,命令如下:hdfs dfs -chmod 777 /tmp 修改/tmp的权限11再次启动hive便不会再报该错误。5.在hadoop用户上可以正常运行如下程序,但是在test01用户登录运行时抛出异常hadoop jar hadoop jar /home/hadoop/hadoop2.7.1/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar wordcount /test/input /test/output11注:这里运行的是wordcount示例,/test/input为数据所在路径;/test/output为输出结果目录,运行时自动创建。在test01用户上执行该程序时抛出如下异常:这里写图片描述出现这个异常的原因是:原来mapreduce.jobhistory.address 和mapreduce.jobhistory.webapp.addres 这两个address的地址使用的是CDH默认的配置值,这里需要改成hostname,这样可能就是原来的位置不对造成的。这里参考了(http://blog.csdn.net/wjcquking/article/details/41242625)发现需要在hadoop的配置文件mapred.site.xml中添加如下内容:</property><property><name>mapreduce.jobhistory.address</name><value>master:10020</value> #master为hostname</property><property><name>mapreduce.jobhistory.webapp.address</name><value>master:19888</value></property><property><name>yarn.app.mapreduce.am.staging-dir</name><value>/user</value> #/user为hdfs上的一个目录</property>1234567891011121312345678910111213在mapred.site.xml中添加如下内容后,把该文件发送到集群其余的机器;在hdfs上创建/user并修改其权限,使得用户test01对其有写权限。由于程序运行时要在hdfs上自动创建/test/output结果目录,则用户test01要对hdfs有写权限,这里为了便于操作,修改hdfs权限为777.至此,wordcount示例可以正常运行。 参考技术D 到后台的资料中进行修改,重新设置一下就好了!

hadoop用户是不是可以具有root权限

可以啊,创建新的用户使用hadoop主要是考虑到安全因素,一般配置的时候都是在root下配置的,使用的时候创建新用户使用hadoop,当然你可以用root启动和使用hadoop,但是root权限太大,可能因为某个误操作导致灾难性的后果,所以... 查看详情

五十七centos创建hadoop用户(修改hadoop用户密码,目录赋予hadoop用户权限等......)(代码片段)

1、创建一个名为hadoops的组groupaddhadoops查看所有组,新增组默认排在最后cat/etc/group2、创建一个名为hadoop的用户,并归到hadoops的组下useradd-ghadoopshadoop查看所有用户,新增用户默认排在最后cat/etc/passwd3、切换用户suhadoop4... 查看详情

hadopp安装配置

第一步创建一个Hadoop用户  在开始安装Hadoop之前,建议创建一个单独的用户以从Linux文件系统来隔离Hadoop文件系统。按照下面的步骤创建用户:  ●用管理员root用户来创建Hadoop用户  ●创建账户使用命令“useraddusername” ... 查看详情

mapreduce应用案例

...动hadoop部署节点操作系统为CentOS,防火墙和SElinux禁用,创建了一个shiyanlou用户并在系统根目录下创建/app目录,用于存放Hadoop等组件运行包。因为该目录用于安装hadoop等组件程序,用户对shiyanlou必须赋予rwx权限(一般做法是root用... 查看详情

mapreduce原理及操作

...动hadoop部署节点操作系统为CentOS,防火墙和SElinux禁用,创建了一个shiyanlou用户并在系统根目录下创建/app目录,用于存放Hadoop等组件运行包。因为该目录用于安装hadoop等组件程序,用户对shiyanlou必须赋予rwx权限(一般做法是root用... 查看详情

2.3hadoop安装与体验(代码片段)

文章目录伪分布式配置创建hadoop用户更新apt安装SSH、配置SSH无密码登陆安装Java环境安装HadoopHadoop伪分布式配置运行Hadoop伪分布式实例参考伪分布式配置去ApacheHadoop官网下载最新版,选择二进制下载本教程使用Ubuntu18.0464位作为系... 查看详情

创建单节点hadoop集群

...用户组和用户$sudoaddgrouphadoop_$sudoadduser–ingrouphadoop_hduser_创建组hadoop_,新用户hduser_,密码系统会提示你输入,后面其他用户信息可以随意填。3   安装SSH服务如果收到这个响应ssh:connecttohostlocalhostport22:Connectionrefused&#... 查看详情

kerberos的简单使用

...ros客户端(3)在Window下使用kinit测试1)KDCServer上通过admin创建一个用户:sudokadmin.local创建用户:addprincznn@HADOOP.COM设置密码:123456创建成功 2)启动Windows上的kerberos客户端,getticket,输入新创建的用户3)销毁获取到的Ticket选... 查看详情

hbase介绍搭建环境安装部署

...建环境部署节点操作系统为CentOS,防火墙和SElinux禁用,创建了一个shiyanlou用户并在系统根目录下创建/app目录,用于存放Hadoop等组件运行包。因为该目录用于安装hadoop等组件程序,用户对shiyanlou必须赋予rwx权限(一般做法是root用... 查看详情

如何配置hadoop环境

...uot;"A-Z"#计算md5值,并转化为大写,方便比较1一、创建Hadoop用户创建hadoop用户,并分配以用户名为家目录/home/hadoop,并将其加入到sudo用户组,创建好用户之后,以hadoop用户登录:sudouseradd-mhadoop-s/bin/bash  sudoadduserhad... 查看详情

flume介绍与安装

...建环境部署节点操作系统为CentOS,防火墙和SElinux禁用,创建了一个shiyanlou用户并在系统根目录下创建/app目录,用于存放Hadoop等组件运行包。因为该目录用于安装hadoop等组件程序,用户对shiyanlou必须赋予rwx权限(一般做法是root用... 查看详情

hadoop之hdfs之一致性模型

...起来可能与你所期望的不同,要注意。    创建了一个文件以后,它是可以在命名空间(namespace)中可以看到的:Path& 查看详情

hadoop搭建-小白友好系(代码片段)

...全程CV一条龙:文章目录Hadoop搭建-全程CV一条龙:创建用户必要组件安装配置SSH安装Java安装Hadoop:伪分布式配置:运行实例:分布式HadoopHadoop集群的安装配置大致为如下流程:网络配置创建你的Slave1&Slave2SSH... 查看详情

docker搭建hadoop和hive集群

...户组中newgrpdocker#重新加载docker用户组一般安装时会自动创建docker用户组,如果docker用户组不存在的话,在终端输入:sudogroupadddocker#创建docker用户组注意,此时只有执行上述两条命令行的终端可以不用输入sudo,... 查看详情

hadoop系列之hadoop环境搭建

...参考Linux系列之安装jdk(二))hadoop3.2.1一、创建hadoop用户useradd-mhadoop-s/bin/bash#创建新用户hadooppasswdhadoop#输入密码(若提示“无效的密码,过于简单”则再次输入确认就行&# 查看详情

如何创建内部漏斗分析?

】如何创建内部漏斗分析?【英文标题】:Howtocreateinhousefunnelanalytics?【发布时间】:2014-01-3109:42:25【问题描述】:我想创建内部漏斗分析基础架构。所有用户活动提要信息都将写入选择的数据库/DW,然后,当我动态定义漏斗时... 查看详情

hadoop2.6.0伪分布环境搭建

 用到的软件:一、安装jdk:1、要安装的jdk,我把它拷在了共享文件夹里面。 (用优盘拷也可以)2、我把jdk拷在了用户文件夹下面。(其他地方也可以,不过路径要相应改变)3、执行复制安装解压命令: 解压完毕:... 查看详情

hive的连接和运行模式

...:https://www.toutiao.com/i6771018203687551495/ Hive的连接启动hadoop的时候将history也启动,如果出问题,可以方便我们后续定位 首先将Hive变成对外开放启动hiveserver2我们查看下如果杀掉需要用kill-9PID的方式启动beeline查看帮助信息简... 查看详情