如何执行已挂载分区上的程序

如何执行已挂载分区上的程序

这是我想要运行的应用程序。

-rwxr-xr-x 1 manuel manuel 582841 Nov 22 09:51 PromServerMain

这是 fstab 条目

/dev/sda8 /media/data0 ext4 defaults,user 0 2

这是挂载点

lrwxrwxrwx 1 manuel manuel     5 Nov 16 14:23 data -> data0
drwxrwxr-x 9 manuel manuel  4096 Nov 22 09:26 data0

这就是我得到的

manuel@P5KC /media/data/Projekte/PromServer/src $ ./PromServerMain
bash: ./PromServerMain: Keine Berechtigung
manuel@P5KC /media/data/Projekte/PromServer/src $ sudo ./PromServerMain
sudo: unable to execute ./PromServerMain: Permission denied

即使作为 root 用户。我不知道哪里出了问题。有什么建议吗?系统是 Debian Wheezy Xfce。

答案1

/media/data0已使用user选项挂载。这意味着noexec不允许从文件系统运行可执行文件。您必须添加exec

/dev/sda8 /media/data0 ext4 defaults,user,exec 0 2

或删除该user选项。

答案2

不幸的是,可执行文件上的“权限被拒绝”通常是一个误导性错误消息。

首先,这是一个真正的可执行文件还是一个脚本?如果是脚本,那么解释器(#!/bin/whatever顶部的行)可能有错误、本身损坏或缺少权限,或者行末有一个多余的回车符。

如果它是真正的可执行文件,请运行ldd PromServerMain并发布输出。其中一个所需库可能缺失或损坏。

相关内容