解决ssh $host jps bash: jps: command not found 问题
Posted on 2022-04-22 14:16 ***Pepsi*** 阅读(210) 评论(0) 编辑 收藏 举报问题描述
使用 ssh $host jps
命令报错,连本机也会有这样的情况,但是分开使用并没有问题,即ssh $host下执行jps命令并不会报错。
原因
因为ssh远程连接到服务器的环境变量中不包含对应可执行文件的路径。需要在shell脚本中自己添加。把java的路径加上就行了。
解决
1、ssh $host source /etc/profile;jps
2、在有java环境变量的情况下,
[dev1@hadoop102 bin]$ ssh hadoop102 $PATH
bash: /usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/module/jdk1.8.0_212/bin:/opt/module/hadoop-3.1.3/bin:/opt/module/hadoop-3.1.3/sbin:/home/dev1/.local/bin:/home/dev1/bin: 没有那个文件或目录
使用命令
ssh $host $JAVA_HOME/bin/jps
3、尝试着把root权限赋给hadoop用户
[root@hadoop102 hadoop]# vim /etc/sudoers
在91行91 shift g
添加
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
dev1 ALL=(ALL) ALL
4、把配置文件中的信息追加到~/.bashrc文件里面
[dev1@hadoop102 profile.d]$ sudo cat /etc/profile >> ~/.bashrc
[dev1@hadoop102 profile.d]$ ssh hadoop102 jps
50943 Jps
5、在 /etc/profile.d 下创建my_env.sh文件,写入
#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_212
export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2021-04-22 4.22 Android studio 通过获取验证码用户登陆成功