博客
关于我
HDFS DataNode启动异常:/opt/jdk1.8.0_151/bin/java:权限不够
阅读量:714 次
发布时间:2019-03-21

本文共 680 字,大约阅读时间需要 2 分钟。

在我之前的文章中,我详细描述了如何在Hadoop环境中解决/opt 目录权限问题,导致DataNode和NodeManager无法启动的问题。由于时间和操作复杂性,这一问题一直未能彻底解决,但我最终找到了一个可行的解决方案。

当我尝试通过递归更改所有拥有的文件夹权限来修复问题时,反而导致许多相关项目的文件权限被更改。由于Hadoop和JDK依赖于特定的文件和目录权限,我意识到必须专注于修复与Java和Hadoop组件相关的特定权限,而不是全面递归修改所有文件夹。

首先,我决定彻底删除/opt/jdk1.8.0_151 目录,并重新解压,并确保此目录及其子目录的所有者和权限符合Hadoop的需要。这意味着:

  • 使用命令 rm -rf /opt/jdk1.8.0_151 或者手动删除目录。
  • 重新解压适当版本的JDK到 /opt 目录,确保解压过程正确。
  • 接下来,在重新解压并确保所有者是hdfs并设置适当的权限后,我再次启动DataNode。这一次,权限错误已经解决,每个步骤都不会报告权限不足的问题。

    此外,我注意到原始问题还涉及到Yarn组件的权限问题。这可能表明我之前的chmod命令影响到了其他关键目录。因此,在修复DataNode后,我必须确保所有相关组件(如Yarn)的权限也正确无误。

    通过这些步骤,Hadoop集群成功重新启动并运行,而不再报错。这提醒我在进行文件权限操作时需要精确,避免不必要的误改。

    总结来说,这次问题的关键在于确保与Hadoop和JDK相关的文件夹权限被正确地修复和重新设定,而不是试图通过广泛的递归chmod来解决。

    转载地址:http://zkkrz.baihongyu.com/

    你可能感兴趣的文章
    php之aop实践
    查看>>
    PHP之APC缓存详细介绍(转)
    查看>>
    php之memcache,memcached
    查看>>
    php之引用
    查看>>
    PHP之数组和函数的基本教程
    查看>>
    UVa 10465 - Homer Simpson
    查看>>
    php九九乘法表加粗,PHP九九乘法表
    查看>>
    PHP二维数组将重复键值合并重组成三维数组
    查看>>
    PHP二维数组转换为一维数组
    查看>>
    PHP二维数组重组
    查看>>
    PHP交换两个变量值
    查看>>
    php代码执行完整流程介绍
    查看>>
    PHP代码格式化工具phpcf常见问题解决方案
    查看>>
    PHP使用3DES算法加密解密字符串
    查看>>
    PHP使用curl multi要注意的问题:每次使用curl multi同时并发多少请求合适
    查看>>
    php使用memcached扩展的一个BUG
    查看>>
    PHP内核介绍及扩展开发指南—基础知识
    查看>>
    PHP写日志fwrite和file_put_contents的区别与性能
    查看>>
    PHP函数
    查看>>
    PHP函数__autoload失效原因(与smarty有关)
    查看>>