在hadoop集群中hadoop102执行ssh hadoop103 "jps"显示bash: jps: command not found

在已搭建的免密登录Hadoop集群中,从hadoop102节点执行sshhadoop103jps命令时,出现bash:jps:commandnotfound错误。原因是远程执行命令默认为nologin环境,不加载etc/profile文件。解决方法有两种:一是通过source命令临时加载环境变量;二是将环境变量配置写入bashrc文件。

问题:

在已经搭建好免密登录的hadoop集群中hadoop102执行ssh hadoop103 "jps"显示bash: jps: command not found

[atguigu@hadoop102 hadoop]$ ssh hadoop103 "jps"
bash: jps: command not found

原因:

在shell中执行命令属于login执行,先登录后执行,使用的环境变量是etc/profile
使用ssh hadoop103 "jps"远程发送命令属于no login 执行。

解决方法:

方法1:
[atguigu@hadoop102 hadoop]$ ssh hadoop103 "source /etc/profile &&jps"
4434 Jps
3684 NodeManager
3192 DataNode
3583 ResourceManager

方法2:

把环境变量写到barhrc里

[atguigu@hadoop102 hadoop]$ cd /etc
[atguigu@hadoop102 etc]$ ll bashrc
-rw-r--r--. 1 root root 2699 Mar 21  2017 bashrc
[atguigu@hadoop102 etc]$ sudo vim bashrc
[atguigu@hadoop102 etc]$ 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值