1

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

我有一个 Linux 可执行文件,它是这些指令的编译输出之一(摘要:下载 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

4

1 回答 1

3

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

如果是这样,您要么需要重新挂载noexec(如果您有足够的权限并想要这样做),要么复制/构建到允许您执行它的目录中。

于 2013-05-07T14:23:47.113 回答