Linux远程启动脚本提示java环境变量不存在

场景:

公司有个远程脚本一键启动所有所有服务器,使用远程命令连接到对应的服务器执行对应服务器上的启动脚本,因为通过ssh命令连接的服务器

修改之前的命令

ssh test@xx.xx.xx.xx "nohup $project > /dev/null 2>&1 &";

将命令改成如下

ssh test@xx.xx.xx.xx "java -version";

响应结果提示未能找到jdk,清楚记得test账户安装了jdk的,然后切换到对应的服务器上,登录test账户,执行 java -version 发现java环境是完好的

那就只有一种解释了,ssh连接到服务器的时候没有获取到java环境,上网搜索说要在启动脚本增加环境变量信息,我觉得对我这种有几十台服务器的不太友好,即便重新编辑一下远程服务器的脚本然后将脚本远程推送到其他服务器,但是也感觉有点麻烦,于是乎

修改如下,成功执行启动命令

ssh test@xx.xx.xx.xx "source /home/test/.bash_profile;nohup $project > /dev/null 2>&1 &";

解释

在执行脚本之前先执行一条命令,刷新一下配置java环境变量的配置文件,使其JAVA环境生效,然后在执行启动脚本不就可以了。简单方便,只修改一下远程启动脚本刷新一下环境变量的配置文件即可,其他地方都不用动

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值