Linux运行程序错误的解决方法

运维 系统运维
linux是一个开源的免费的操作系统,可能接触linux系统的用户没有windows系统的用户多,但是其功能和界面却完全不逊于windows系统。下面是教大家解决Linux运行程序错误的方法,具体内容如下所述。

linux是一个开源的免费的操作系统,可能接触linux系统的用户没有windows系统的用户多,但是其功能和界面却完全不逊于windows系统。下面是教大家解决Linux运行程序错误的方法,具体内容如下所述。

现象:

本机安装的是Linux;运行32位的apache;  错误提示:Nosuchfileordirectory

解决过程:

首先我查看次二进制程序是否是unix/linux版本的:

 

  1. filefilename:httpd:setuidELF32-bitLSBexecutable,Intel80386,version1(SYSV),dynamicallylinked(usessharedlibs),forGNU/Linux2.2.5,notstripped 

 

由此可见此程序是32位可执行linux程序;

第二步查看操作系统版本:

  1. uname-a:Linuxubuntu2.6.35-22-generic#33-UbuntuSMPSunSep1920:32:27UTC2010x86_64GNU/Linux 

 

可见安装的内核是64位的linux;

那么可以定位问题为32位的可执行程序不能在64位内核上运行的的问题;但是我只到64为内核是可以运行32为的程序的,可能是缺少一些32位的动态库吧。于是google了下,发现果然是缺少ia32-libs这个包;于是apt-getinstallia32-lib安装这个包;

问题解决;

总结:我们知道一个可执行二进制程序文件头都是有一个魔数的,比如linuxc程序的都有ELF魔数;现如今linux环境在加载可执行程序时,可以动态根据不同的魔数,加载java,ruby,python,awk,go,等等语言的执行器来执行程序;

同样一个技巧,有时候我们运行一个程序时会报缺少动态链接库的问题,我们先oddfilename;可以知道缺少的库;

总结:

Linux运行程序错误的解决方法希望能够对大家有所帮助,更多有关linux系统的知识还有待于读者去探索和学习。

责任编辑:韩亚珊 来源: 互联网
相关推荐

2017-04-07 09:02:06

Spark方法优化

2012-08-15 14:01:18

2010-01-15 10:31:19

Linux编译

2010-10-19 10:25:29

SQL Server连

2010-03-29 17:46:39

Nginx asp

2010-06-17 10:32:13

开机显示Grub

2011-05-16 09:54:22

mysql1067错误

2009-06-17 15:33:50

java heap s

2010-02-24 16:30:52

WCF常见错误

2011-08-30 13:48:50

phpmyadmin

2020-06-27 08:57:55

HTTP403服务器

2009-12-18 11:03:45

Ruby watir环

2013-08-13 13:38:13

Android错误解决

2010-05-13 13:59:04

IIS服务器

2020-02-26 09:42:15

主存程序存储器

2011-08-22 15:39:38

Linux

2013-04-10 15:30:42

2009-12-25 10:01:23

WinForm程序

2010-06-01 15:58:14

SVN错误

2009-09-02 14:30:35

C#换行符号
点赞
收藏

51CTO技术栈公众号