【已解决】【Hadoop】【./bin的使用】bash: ./bin/hdfs: 没有那个文件或目录

在 Hadoop 环境中,决定何时在命令前添加 ./bin 和如何处理路径 /home/hadoop 与 /usr/local/hadoop 的问题,主要取决于你的当前工作目录和环境变量的设置。以下是一些指导原则:

何时使用 ./bin:

  1. 当前目录是 Hadoop 安装目录 :当你的工作目录是 Hadoop 安装目录时(例如 /usr/local/hadoop),你可以使用 ./bin 来执行 Hadoop 的可执行文件,因为 ./bin 指的是当前目录下的 bin 子目录。

    例如:

    复制代码
    ./bin/hdfs dfs -ls /
  2. 简化命令 :使用 ./bin 可以确保你执行的是当前目录下的 Hadoop 命令,而不是系统路径中的命令。

何时不需要使用 ./bin:

  1. 环境变量 PATH 已设置 :如果你已经将 Hadoop 的 bin 目录添加到了你的 PATH 环境变量中,你可以在任何工作目录下直接执行 Hadoop 命令,而不需要 ./bin。

    例如:

    复制代码
    hdfs dfs -ls /
  2. 使用完整路径 :如果你不想使用 ./bin,也可以通过指定 Hadoop 可执行文件的完整路径来执行命令。

    例如:

    复制代码
    /usr/local/hadoop/bin/hdfs dfs -ls /

/home/hadoop 与 /usr/local/hadoop 的区别:

  • /home/hadoop:这通常是 Hadoop 用户的家目录。在这个目录下,用户可以存放个人文件和数据。

  • /usr/local/hadoop :这是一个示例路径,表示 Hadoop 可能安装在 /usr/local 目录下,名为 hadoop 的子目录。这是 Hadoop 的安装目录,其中包含 Hadoop 的可执行文件、配置文件、库文件等。

示例:

  • whereis 命令将返回 Hadoop 二进制文件、源文件和手册页的位置。

  • 假设你在安装 Hadoop 时或在 .bashrc、.bash_profile 或全局环境变量文件中设置了 HADOOP_HOME环境变量,使用echo命令查看其值。

假设 Hadoop 安装在 /usr/local/hadoop:

  1. 在 Hadoop 安装目录下:

    • 你可以使用 ./bin:

      复制代码
      ./bin/hdfs dfs -ls /
  2. 在其他目录下:

    • 如果你已经将 /usr/local/hadoop/bin 添加到了 PATH,你可以直接执行:

      复制代码
      hdfs dfs -ls /
    • 或者使用完整路径:

      复制代码
      /usr/local/hadoop/bin/hdfs dfs -ls /

设置 PATH 环境变量:

在你的 .bashrc 或 .bash_profile 文件中添加以下行:

复制代码
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin

然后,重新加载配置文件:

复制代码
source ~/.bashrc

这样,你就可以在任何目录下直接使用 Hadoop 命令了。

总结:

  • 使用 ./bin 当你在 Hadoop 安装目录下工作时。
  • 不需要 ./bin 当你已经在 PATH 中设置了 Hadoop 的 bin 目录,或者你使用完整路径执行命令。
  • /home/hadoop 通常是指用户的家目录,而 /usr/local/hadoop 是 Hadoop 的安装目录。
相关推荐
行走的陀螺仪1 小时前
Claude Code 从入门到实战(二):Bash工具、Plan模式与后台任务
开发语言·bash
Gl�ria2 小时前
Hadoop 速刷:HDFS / MR / YARN / Spark / Hive
hadoop·hdfs·mr
FserSuN2 小时前
Hive 分区表存储与查询优化学习总结
hive·hadoop·学习
测试盐1 天前
spark作业日志定位过程
java·hadoop·spark
NiceZack2 天前
Hadoop 部署全流程教程:从新装 CentOS 到伪分布式与完全分布式
hadoop·分布式·centos
SEO_juper3 天前
Bash 交叉验证 robots.txt 和 sitemap:两个文件自相矛盾,页面永远收录不了
开发语言·python·node.js·json·bash
无足鸟ICT4 天前
【RHCA+】type命令(判断命令类型)
linux·ssh·bash
棣廷4 天前
初识Hive(2)
数据仓库·hive·hadoop
father_12275 天前
【ambari管理下hdp2.6.5升级hive1.2.1-2.1.0-2.3.3】
hive·hadoop·ambari
magic_kid_20105 天前
HDFS 故障复盘:千万级 block 导致 FBR 超过 128 MiB,DataNode 被判定为 dead
大数据·hadoop·hdfs·hadoop 故障