1

所以,我正在尝试在我的三星 Galaxy Tab 2(在虚拟机中)中运行我用 C 编写的程序

它编译没有问题,make命令运行顺利,但程序本身没有运行

外壳$ ./prot

这给了我以下错误:

bash: ./prot: Permission Denied

这些是文件的权限:

-rw-rw-r-- 1 root sdcard-rw 8609 Mar 20 16:23 prot

这可能是什么,我该如何克服这个小问题?

PS.:我使用的是 Ubuntu,这个程序在我的 Mac 上编译和运行良好。

编辑:查看 teppic 的答案,它解决了我的问题。

4

3 回答 3

3

您的 sdcard 很可能安装了noexec,这会阻止您在其上执行任何文件。如果您查看/etc/fstab,并且有一个 sdcard 条目,请取出此选项。通常也可以exec使用mount -o remount,exec.

否则,您可以将其复制到允许可执行文件的地方(例如/tmp)。

于 2013-03-20T16:50:05.377 回答
1

您必须具有执行权限,x即位集。尝试

chmod +x prot

要解决这个问题。

于 2013-03-20T16:31:53.210 回答
0

也许您需要管理员权限才能更改它,请尝试:

$> sudo chmod 777 保护

于 2013-03-20T16:37:46.287 回答