当前位置: 首页 > article >正文

【已解决】【Hadoop】HDFS操作时:未找到命令的解决办法

任务:解决命令无法识别的问题,并成功执行Hadoop的文件系统操作命令。

截图中的错误提示:系统建议用户可能输入了错误的命令,并列出了两个可能的命令:

  • hdfls(来自于包 hdf4-tools
  • hfs(来自于包 hfsutils-tcltk

原因:1.命令格式错误 2.Hadoop未正确安装 3.Hadoop未正确配置

        如果命令格式正确但仍然出现错误,可能是因为Hadoop没有正确安装,或者Hadoop的可执行文件没有添加到系统的PATH环境变量中。

下文我们解决第三种情况

方法一:更正命令格式:在每个命令前面加上./bin/加上空格。正确的命令格式应该是:

./bin/hdfs dfs -ls /hdfs

方法二:环境变量:确保Hadoop的可执行文件路径已经添加到系统的PATH环境变量中。你可以通过以下命令来检查:

echo $PATH

如果Hadoop的可执行文件路径没有包含在内,你需要将其添加进去。通常,Hadoop的可执行文件位于 $HADOOP_HOME/bin,你可以按照以下步骤添加:

 1.打开 .bashrc文件:

nano ~/.bashrc

 2.在文件末尾添加以下行:

export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

简而言之,这两行命令的作用是:

  1. 定义一个指向Hadoop安装目录的环境变量HADOOP_HOME
  2. 将Hadoop的可执行文件目录添加到PATH环境变量中,以便在任何地方都能直接运行Hadoop的命令。

详细说明: 

  1. export HADOOP_HOME=/usr/local/hadoop

    • 这条命令设置了一个新的环境变量HADOOP_HOME,其值为/usr/local/hadoop。这个变量通常用来指向Hadoop的安装目录。这样,你就可以在其他脚本或命令中使用$HADOOP_HOME来引用Hadoop的安装路径,而不需要每次都输入完整的路径。
  2. export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

    • 这条命令将Hadoop的binsbin目录添加到当前用户的PATH环境变量中。
    • PATH是一个特殊的环境变量,它定义了系统在执行命令时搜索可执行文件的目录列表。
    • $PATH表示当前的PATH值,:是路径分隔符。
    • $HADOOP_HOME/bin$HADOOP_HOME/sbin分别表示Hadoop安装目录下的binsbin子目录。
    • 通过将这些目录添加到PATH中,你可以在任何目录下直接运行Hadoop的可执行文件,如hadoopstart-dfs.shstart-yarn.sh等,而不需要每次都输入完整的路径。

3.保存并退出:使用的是 nano,可以按 CTRL + X 退出,y确定更改,enter下达命令。(如果使用的是 vim,可以按 Esc 键,然后输入 :wq 保存并退出。)

4.重新加载配置文件(使更改立即生效):

source ~/.bashrc
  • 注意:如果你没有使用 source 命令重新加载配置文件,那么在打开新的终端会话时,系统会自动读取 .bashrc 或 .bash_profile 文件,并应用其中的环境变量设置。

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

5.你可以通过以下命令验证环境变量是否设置成功:

echo $HADOOP_HOME
echo $PATH

然后,在更正了命令格式和确认环境变量设置正确后,重新尝试执行命令:

hdfs dfs -ls /hdfs


http://www.kler.cn/news/363367.html

相关文章:

  • 数据库的构成与手写简单数据库的探索
  • VMware虚拟机中centos磁盘扩容(非VG分区挂载方案)
  • NLP 技术:AI 是如何理解人类语言的
  • 面向对象进阶(下)(JAVA笔记第二十二期)
  • 网站前端登录加密方案调查
  • 前端技巧第一期
  • 无线领夹麦克风哪个牌子好,麦克风品牌排行榜前十名,选购推荐
  • 人工智能:重塑未来生活与工作的科技力量
  • QT 实现随机码验证
  • Spring + WebSocket
  • SparkSQL整合Hive
  • Java集合(2 :List)
  • 【数据库】postgres数据库命令
  • 【树莓派 5B】Python 版本切换
  • C++之《剑指offer》学习记录(6):unordered_set和unordered_map
  • Proteus8使用教程
  • 如何使用pycharm测试自己的后端接口
  • 使用.NET MAUI开发第一个安卓APP
  • Fine-tuning 和 LoRA 和 QLoRA的区别
  • 常用于OBD系统的单端K总线收发器芯片资料:CSM9241
  • 【学习笔记】RFID
  • Facebook网页版登录不了是什么原因?如何解决?
  • Jtti:服务器GPU占用率过高是好事还是坏事?
  • 数字三角形模型
  • Vue前端开发:单向数据绑定
  • 中信银行深化ESG理念 以金融高质量发展助力金融强国建设