Linux的二进制文件无法运行问题及解决
问题描述
cannot execute binary file
解决思路
不能执行二进制文件,而指令没有报错;
执行文件的用户权限也是最高权限(如上图,root用户);
使用ls -l查看,这是可执行文件;
那会不会是环境问题呢?我不知道,但这是需要头号解决的问题。如果不是环境问题的话,那一定是个有趣的问题。
重新编译
这是重新编译的情况,依然是不行,所以这是个有趣的问题。
查找根源
(1)查看执行文件内容
里面有个eaidkAuth,我们单独执行看看。
(2)单独执行eaidkAuth
单独执行的时候,没有问题,那么,可能是别人写的脚本不对。我们尝试改一下。
(3)改为全路径
#!/bin/bash for ((i=0;i<=1000;i++)) do sh /usr/local/tengine/html/testyqf/device-authentication/src/device/build01/eaidkAuth& done
如图,说明已经成功解决该问题了,也就是脚本里面执行的文件找不到。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Apache启动错误Permission denied: httpd: could not open error log
这篇文章主要介绍了Apache启动错误Permission denied: httpd: could not open error log file解决方法,需要的朋友可以参考下2014-07-07CentOS 7更新时出现:Multilib version problems问题的解决方法
这篇文章主要给大家介绍了关于CentOS 7系统更新时出现:Multilib version problems问题的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起看看吧。2017-11-11在Linux中列出Systemd下所有正在运行的服务的方法指南
Systemd是Linux的系统和服务管理器; init进程的替代品,与SysV 和LSB init脚本兼容,systemctl命令是管理systemd的主要工具,在这篇文章中,我们将演示如何 Linux中列出systemd下所有正在运行的服务,感兴趣的同学可以借鉴阅读2023-06-06
最新评论