远程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

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM