遇到这样的问题:-bash: /usr/local/java/jdk1.8.0_161/bin/java: cannot execute binary file: Exec format error

原因是: 在 64 位的 Linux 系统中安装了 32 位的 JDK 环境,当前linux系统和所装的kdl版本之间不一致导致。

最简单的解决办法如下:

# vim /etc/profile
在文档最后,添加:
export PATH="/usr/local/src/java/bin:$PATH"
保存,退出,然后运行:
#source /etc/profile

vi /etc/profile

JAVA_HOME=/usr/local/jdk1.8.0_161
CLASSPATH=.:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH

或者:

export JAVA_HOME=/usr/local/jdk1.8.0_161
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH

对于用户的SHELL初始化而言是先执行/etc/profile,再读取文件/etc/environment.对整个系统而言是先执行/etc/environment。

/etc/enviroment --> /etc/profile --> $HOME/.profile   -->$HOME/.env (如果存在)

/etc/profile 是所有用户的环境变量, /etc/enviroment是系统的环境变量。 登陆系统时shell读取的顺序应该是 :

/etc/profile ->/etc/enviroment -->$HOME/.profile   -->$HOME/.env

当用户环境和系统环境有区别时候,会导致这个问题。

如果同一个变量在用户环境(/etc/profile)和系统环境(/etc/environment)有不同的值那应该是以用户环境为准。

这几个文件的解释如下:

(1)/etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置。
(2)/etc/bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。
(3)~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。
(4)~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。
(5) ~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承 /etc/profile中的变量,他们是"父子"关系。
(6)~/.bash_profile 是交互式、login 方式进入 bash 运行的~/.bashrc 是交互式 non-login 方式进入 bash 运行的通常二者设置大致相同,所以通常前者会调用后者。


如果前面的办法还是没能解决,则继续向下看:

安装依赖包

sudo apt-get install libc6-i386 lib32gcc1 lib32z1 lib32stdc++6 ia32-libs

强制升级更新

sudo apt-get update -y --force-yes && sudo apt-get upgrade -y --force-yes && sudo apt-get dist-upgrade -y --force-yes

定时传图:

lifeccp@raspberrypi:~/webapp/osprey $ crontab -l

# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h dom mon dow command
# */2 * * * 1-5 /home/lifeccp/gateway/upload.sh >/dev/null 2>&1
# 10 8 * * 1-5 /home/lifeccp/gateway/upload.sh >/dev/null 2>&1
10 8 * * 1-5 cd /home/lifeccp/HAO/osprey;/home/lifeccp/gateway/upload10_EatYourOwnDogFood.sh >> /home/lifeccp/gateway/upload_cron_log_EatYourOwnDogFood.txt
# 10 8 * * 1-5 cd /home/lifeccp/gateway;/home/lifeccp/gateway/upload10_EatYourOwnDogFood.sh >> /home/lifeccp/gateway/upload_cron_log_EatYourOwnDogFood.txt
# */2 * * * 1-5 cd /home/lifeccp/gateway;/home/lifeccp/gateway/upload.sh >> /home/lifeccp/gateway/upload_cron_log.txt
# 05 15 * * 1-5 cd /home/lifeccp/gateway;/home/lifeccp/gateway/upload.sh >> /home/lifeccp/gateway/upload_cron_log.txt
# */2 * * * 1-5 java -jar /home/lifeccp/gateway/gw-emulator-0.0.11.jar 1 >> /home/lifeccp/gateway/upload_cron_log.txt
# 10 8 * * 1-5 /home/lifeccp/gateway/upload.sh >> /home/lifeccp/gateway/upload_cron_log.txt

/home/lifeccp/gateway/upload10_EatYourOwnDogFood.sh

#!/bin/sh
#java -jar /home/lifeccp/gateway/gw-emulator-0.0.11.jar 1
for i in $(seq 30); do
echo "\n ***********\n Number:$i \n*************** \n";
java -jar /home/lifeccp/gateway/gw-emulator-0.0.11.jar 1
sleep 120;
done;

设定数量

newBoxupdate.sh

#!/bin/sh

cd /home/lifeccp/webapp/osprey/
rm -rf /home/lifeccp/webapp/osprey/*
kill -9 `ps -ef | grep osprey | awk '{print $2}'`
scp lifeccp@192.168.21.11:/home/lifeccp/boxrelease/osprey/osprey.zip /home/lifeccp/webapp/
unzip /home/lifeccp/webapp/osprey.zip -d /home/lifeccp/webapp/osprey/
echo "Update SCUU ! Box Will restrt at 10 minutes..." sudo reboot

【树莓派】-bash: /usr/local/java/jdk1.8.0_161/bin/java: cannot execute binary file: Exec format error的更多相关文章

  1. linux环境下运行程序格式错误的问题,bash: ./helloworld: cannot execute binary file: Exec format error

    在编译完quecOpen的example helloworld之后,我运行此程序,结果报错,详情如下: ricks@ubuntu:~/share/project/ql-ol-sdk/ql-ol-ext ...

  2. Centos安装jdk1.8出现-bash: //usr/local/soft/jdk1.8.0_191/bin/javac: /lib/ld-linux.so.2: bad ELF interpreter: 没有那个文件或目录错误。

    1.从来没有这么郁闷,之前安装都是好好的,自从将Centos升级到7.0版本,安装了jdk报了这个错误,也是郁闷的一毛,参考了一下百度的,记录一下.使用java命令还有java -version命令都 ...

  3. bash: /usr/lib/jvm/jdk1.7.0_80/bin/java: No such file or directory 问题

    在安装java的时候,经常会遇到一些奇奇怪怪的问题. 在配置好环境变量之后,执行java -version,出现: bash: /usr/lib/jvm/jdk1.7.0_80/bin/java: N ...

  4. Centos 7 JDK验证 解决java -version 报错: bash: /home/jdk1.8.0_161/bin/java: Permission denied

    2.vim /etc/profile  编辑profile  文件,在里面添加: #set java enviroment JAVA_HOME=/usr/java/jdk1.8.0_144 JRE_H ...

  5. 安装JDK出现错误:-bash: /usr/java/jdk1.7.0_71/bin/java: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory解决办法

    1.错误描述:安装好jdk之后,通过java -version,javac,java等命令测试是否安装成功时出现错误-bash: /usr/java/jdk1.7.0_71/bin/java: /li ...

  6. Centos7 JDK安装过程中 解决java -version 报错: bash: /home/jdk1.8.0_161/bin/java: Permission denied

    1.执行Linux命令 -----vim /etc/profile  编辑profile  文件,在里面添加: #set java enviroment JAVA_HOME=/opt/JavaHome ...

  7. tomcat报错catalina.sh: line 401: /usr/java/jdk1.7.52/bin/java: No such file or directory

    将生产服务器的Tomcat目录打包过来后解压后,启动Tomcat后,发现如下问题: # ./shutdown.sh  Using CATALINA_BASE:   /usr/local/tomcat  ...

  8. tomcat报错catalina.sh: line 401: /usr/java/jdk1.7.52/bin/java: No such file or directory(转)

    原文:https://blog.csdn.net/reblue520/article/details/52588825 将生产服务器的Tomcat目录打包过来后解压后,启动Tomcat后,发现如下问题 ...

  9. C:\Program Files\Java\jdk1.7.0_79\bin\java.exe'' finished with non-zero exit value 1

    转载请标明出处:https://www.cnblogs.com/tangZH/p/10538982.html 今天,在项目过程中碰到了这个奇怪的问题,C:\Program Files\Java\jdk ...

随机推荐

  1. TCP三次握手,什么情况下client会回复reset

    1. 现象 最近线上发现如下异常包, tcp三次握手期间,server端发送syn_ack,client回复了reset包: 问题:为什么client会回复reset? 2. 分析 参考linux2. ...

  2. [BZOJ4785][ZJOI2017]树状数组(概率+二维线段树)

    4785: [Zjoi2017]树状数组 Time Limit: 40 Sec  Memory Limit: 512 MBSubmit: 297  Solved: 195[Submit][Status ...

  3. bzoj 1015 维护连通块个数,离线并查集

    水. /************************************************************** Problem: 1015 User: idy002 Langua ...

  4. ajax请求数据填充表格———使用art-template模板提高效率

    一.为什么要用art-template模板 在实习的一次项目中,因为需求中展示表格的字段有很多个,后端返回的也是json数据,这时候如果还是使用之前的字符串拼接,这样会开发得比较慢,而且容易出错,而且 ...

  5. 【原创】Eclipse中Android项目引用

    1.选择名为SMSSDK的项目,右键--->Properties--->Android--->将Is Library勾上--->OK. 2.选中另一个名为FragmentDem ...

  6. 类方法load和initialize的区别

    1.+load方法当类或分类添加到object-c runtime时被调用,子类的+load方法会在它所有父类的+load方法之后执行,而分类的+load方法会在它的主类的+load方法之后执行.但不 ...

  7. 为什么TCP连接需要三次握手分开需要四次握手?

    TCP的三次握手和四次断开TCP是一个面向连接的服务,面向连接的服务是电话系统服务模式的抽象,每一次完整的数据传输都必须经过建立连接,数据传输和终止连接3个过程,TCP建立连接的过程称为三次握手,下面 ...

  8. Java获取服务器IP和客户端IP

    服务器IP: String addr = InetAddress.getLocalHost().getHostAddress(); 说明:很明显上面是没考虑到服务器有多个iP的情况. 客户顿啊IP: ...

  9. Windows下配置Git服务器和客户端

    http://www.cnblogs.com/lwme/archive/2012/12/25/configuring-git-server-and-client-on-windows.html] 选择 ...

  10. Percona-Toolkit学习之安装和配置

    http://blog.chinaunix.net/uid-26446098-id-3390779.html