远程ssh执行命令时提示找不到命令
Posted tele-share
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了远程ssh执行命令时提示找不到命令相关的知识,希望对你有一定的参考价值。
最开始的时候碰到这种问题,是在hadoop003上配置了jdk1.8, 在hadoop002上执行ssh hadoop003 java -version提示没有命令,先ssh hadoop003然后执行java -version则没有问题后来执行分发脚本时也碰到过这种问题,如果分步执行,先ssh到主机,然后执行命令就没有问题,然而直接ssh + 主机 + 命令就会报错,百度之后发现是ssh远程执行命令时加载的环境文件是~/.bashrc.所以解决的思路就是在~/.bashrc中添加需要的环境变量即可,后来又研究了下发现和登录模式有关请参考https://blog.csdn.net/whitehack/article/details/51705889
1 #java
2 export JAVA_HOME=/opt/module/jdk1.8.0_181
3 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
4 export PATH=$JAVA_HOME/bin:$PATH
5
6 #hadoop
7 export HADOOP_HOME=/opt/module/hadoop-3.1.1
8 export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
9 export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
10 export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib:$HADOOP_COMMON_LIB_NATIVE_DIR"
11
12 #myqsl
13 export PATH=$PATH:/usr/local/mysql/bin
以上是关于远程ssh执行命令时提示找不到命令的主要内容,如果未能解决你的问题,请参考以下文章
ssh执行远程服务器脚本 提示php: command not found