为什么这个Linux二进制文件(SCons输出)没有执行?

时间:2013-05-07 14:07:48

标签: linux mongodb amazon-ec2 scons

这是“为什么我的文件不运行”问题的另一个变体。

我有一个Linux可执行文件,它是这些instructions的汇编输出之一(摘要:下载Mongo源代码并运行“scons --ssl all”)

编译期间没有错误,但是当我运行它时,我得到了这个输出:

[ec2-user@ip-10 mongo]$ ./mongo
-bash: ./mongo: Permission denied

[ec2-user@ip-10 mongo]$ sudo ./mongo
sudo: unable to execute ./mongo: Permission denied

可执行文件

[ec2-user@ip-10 mongo]$ ls -al mongo
-rwxr-xr-x 1 ec2-user ec2-user 8545720 May  7 13:41 mongo

它似乎是一个格式正确的文件

[ec2-user@ip-10 mongo]$ file mongo
mongo: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, BuildID[sha1]=0x910b4f1d
2799940d47b7a064282ad825f38c6067, stripped

我继续关注scons,我的环境和各种邮件列表,但我不确定问题是什么。有什么建议吗?

进一步详情: 这是亚马逊的形象,

Linux ip-10 3.2.39-6.88.amzn1.x86_64 #1 SMP Sat Mar 2 05:13:37 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

它本地安装了Python 2.6.8,SCons 2.0.1和Mongo 2.4.3

1 个答案:

答案 0 :(得分:3)

听起来您执行的文件系统可能是使用noexec选项挂载的。检查mount | grep noexec的输出,看看您的文件系统是否已列出。

如果是这样,您将需要在没有noexec的情况下重新安装(如果您有足够的权限并希望这样做)或者复制/构建到允许您执行它的目录中。