2013-05-07 71 views
1

下面是“为什么不运行我的文件”问题的另一个变体。为什么这个Linux二进制(SCons输出)不执行?

我有一个Linux的可执行文件,从这些instructions编译输出之一(总结:下载蒙戈来源和运行“scons的--ssl所有”)

有编译过程中没有错误,但是当我运行它,我得到这个输出:

[[email protected] mongo]$ ./mongo 
-bash: ./mongo: Permission denied 

[[email protected] mongo]$ sudo ./mongo 
sudo: unable to execute ./mongo: Permission denied 

可执行

[[email protected] mongo]$ ls -al mongo 
-rwxr-xr-x 1 ec2-user ec2-user 8545720 May 7 13:41 mongo 

看起来牛逼Ø是一个结构良好的文件

[[email protected] 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,2.0.1使用SCons和蒙戈2.4.3本地安装

回答

3

这听起来像可能是文件您正在执行的系统将使用noexec选项进行装载。检查mount | grep noexec的输出并查看是否列出了您的文件系统。

如果是这样,您或者需要重新登录而没有noexec(如果您有足够的权限并且想要这么做),或者复制/构建到您将被允许执行的目录中。

+0

我正在拍我的前额,这正是问题所在。编译占用了大量的空间,所以我在自由空间最大的驱动器上做了这个。碰巧用noexec挂载的。谢谢! – 2013-05-07 14:31:24