hadoop:编写jpsall脚本错误bash: 行 1: jps: 未找到命令

文章讲述了在Ubuntu22.04环境下,通过bash脚本使用SSH连接Hadoop集群节点时,遇到jps命令无法执行的问题。原因是jps属于Java命令,不在Shell的默认路径中。解决方案是通过指定$JAVA_HOME/bin/jps的完整路径来执行命令,并通过修改脚本权限使其可执行。
摘要由CSDN通过智能技术生成

jpsall脚本:集群使用jps命令查看集群运行情况

#!/bin/bash

for host in hadoop102 hadoop103 hadoop104
do
        echo =============== $host ===============
        ssh $host jps
done

运行jpsall报错:

原因: jps命令可能不属于shell编程因此在ssh远程控制虚拟机时无法默认打开配置文件

解决:jps属于java命令在jdk的bin目录下,只需要在ssh hadoop102 后加上jps的绝对路径

即可,因为配置了环境变量因此我的路径是$JAVA_HOME/bin/jps

再改变文件权限 chmod u+x jpsall 就可以使用

虚拟机版本:ubuntu22.04

#!/bin/bash

for host in hadoop102 hadoop103 hadoop104
do
        echo =============== $host ===============
        ssh $host $JAVA_HOME/bin/jps
done

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
"Su Hadoop Bash: hadoop: 未找到命令" 这个错误提示通常表示你在尝试在bash shell中使用Hadoop命令工具时,Hadoop环境没有被正确配置或者Hadoop命令的路径不在系统的PATH变量中。 Hadoop是一个分布式计算框架,用于存储和处理大数据。要解决这个问题,你可以按照以下步骤操作: 1. **确认安装**:首先,检查是否已安装Hadoop。如果没有,你需要从官方网站下载并安装适合你系统版本的Hadoop。 2. **配置环境变量**:安装完成后,你需要添加Hadoop的bin目录到系统的PATH环境变量中。在Linux或Mac系统中,可以在`~/.bashrc`或`~/.bash_profile`文件中添加一类似于`export PATH=$PATH:/path/to/hadoop/bin`的命令,然后source该文件使更改生效。 3. **验证安装**:尝试运`hadoop`命令,如果仍然提示未找到命令,可能是路径设置问题。可以尝试直接输入完整路径,比如`/path/to/hadoop/bin/hadoop`。 4. **Hadoop配置文件**:确认`hadoop.conf`文件中的核心配置是否正确,如`core-site.xml`和`hdfs-site.xml`,特别是`fs.defaultFS`和`hadoop.security.authentication`等关键配置。 5. **启动服务**:安装和配置完成后,确保Hadoop服务(如HDFS和YARN)已经启动。如果服务未运,启动它们并等待它们完全启动。 6. **权限问题**:检查当前用户是否有执Hadoop命令的权限。 如果以上步骤都尝试过还是无法解决问题,可能需要查看Hadoop的日志(通常是`hadoop.log`或`hadoop.err`),以获取更具体的错误信息。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北方569

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值