我正在尝试安装hadoop 2.9.1
,ubuntu 19.10
并按照此视频中解释的所有步骤进行操作https://www.youtube.com/watch?v=Y6oit3rCsZo
问题是,当我尝试使用此命令启动单节点集群时:
hduser@-ubuntu:~$ start-dfs.sh
我收到此错误:
localhost:chown:修改“/usr/local/hadoop-2.9.1/logs”的所有者:操作不允许
我搜索了一下,找到了一些解决方案在 Hadoop 中启动单节点集群时出现“权限被拒绝”错误
以及namenode 没有运行...我已经尝试过 sudo chown -R username /usr/local/hadoop/ 请帮忙
因此我尝试使用以下方法来解决这个问题:
1-hduser@-ubuntu:~$ chown -R hduser /usr/local/hadoop/hadoop-2.9.1/
返回
chown:修改“/usr/local/hadoop/hadoop-2.9.1/logs/yarn-imed-resourcemanager-imed-bigdata-ubuntu.out”属性:操作不允许 chown:修改“/usr/local/hadoop/hadoop-2.9.1/logs/SecurityAuth-imed.audit”属性:操作不允许 chown:修改“/usr/local/hadoop/hadoop-2.9.1/logs/userlogs”属性:操作不允许 chown:修改“/usr/local/hadoop/hadoop-2.9.1/logs/yarn-imed-resourcemanager-imed-bigdata-ubuntu.log”属性:操作不允许
chown:修改“/usr/local/hadoop/hadoop-2.9.1/logs/yarn-imed-resourcemanager-imed-bigdata-ubuntu.out”的所有者:操作不允许 chown:修改“/usr/local/hadoop/hadoop-2.9.1/logs/SecurityAuth-imed.audit”的所有者:操作不允许 chown:修改“/usr/local/hadoop/hadoop-2.9.1/logs/userlogs”的所有者:操作不允许 chown:修改“/usr/local/hadoop/hadoop-2.9.1/logs/yarn-imed-resourcemanager-imed-bigdata-ubuntu.log”的所有者:操作不允许
2-我尝试了这个命令:
hduser@-ubuntu:~$ chmod 777 /usr/local/hadoop/hadoop-2.9.1/
我得到了
chmod: 修改 '/usr/local/hadoop/hadoop-2.9.1/' 的权限: 操作不允许
3-我sudo
每次都添加喜欢sudo chmod 777 /usr/local/hadoop/hadoop-2.9.1/
,得到:
[sudo] Mot de passe de hduser :
chmod:dhduser 的修改未出现在 sudoers 文件中。将报告此事件。roits de '/usr/local/hadoop/hadoop-2.9.1/':操作不允许
4-最后,我使用 运行集群节点/usr/local/hadoop/hadoop-2.9.1/sbin/start-dfs.sh
。但是,我得到了同样的错误!
在 [localhost] localhost 上启动 namenodes:chown:修改 '/usr/local/hadoop-2.9.1/logs' 的所有者:操作不允许
请注意我的start-dfs.sh
文件是:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>file:/usr/local/hadoop/hadoopdata/hdfs/namenode</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>file:/usr/local/hadoop/hadoopdata/hdfs/datanode</value>
</property>
</configuration>
文件./.bashrc
包含以下参数:
export HADOOP_PREFIX=/usr/local/hadoop/hadoop-2.9.1
export HADOOP_HOME=/usr/local/hadoop/hadoop-2.9.1
export HADOOP_MAPRED_HOME=${HADOOP_HOME}
export HADOOP_COMMON_HOME=${HADOOP_HOME}
export HADOOP_HDFS_HOME=${HADOOP_HOME}
export YARN_HOME=${HADOOP_HOME}
export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop
#Native path
export HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_HOME}/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_PREFIX/lib/native"
#Java path
export JAVA_HOME="/usr/lib/jvm/jdk1.8.0_251"
请问我该如何解决这个问题?
答案1
好吧,解决方案是我应该 使用以下命令将包括在文件夹中以获得该文件夹的权限hduser
:hadoopgroup
/usr/local/hadoop/hadoop-2.9.1/logs
sudo chown -R hduser:hadoopgroup /usr/local/hadoop/hadoop-2.9.1/logs
这解决了我的问题!