如何从已安装的驱动器运行可执行文件?

我在硬盘驱动器的已安装分区上创建了一个Eclipse Workspace。 我能够成功构建hello world程序但是当我尝试执行runnable时,我收到以下错误消息:

Error starting process. Exec_tty error:Cannot run program "/media/vineet/DEVDATA1/vinexpMount/Debug/vinExpeMount": Unknown reason Exec_tty error:Cannot run program "/media/vineet/DEVDATA1/vinexpMount/Debug/vinExpeMount": Unknown reason Exec_tty error:Cannot run program "/media/vineet/DEVDATA1/vinexpMount/Debug/vinExpeMount": Unknown reason 

请告诉我该怎么办? 我检查了可执行文件的权限

-rw-R – R–

这意味着我没有获得执行权限。 但是当我在根分区中创建工作区时,默认情况下我获得了执行权限。 我该怎么做才能在这里获得相同的行为?

这应该是一个评论,但似乎我没有权利写任何,所以抱歉提前。

您是否尝试在终端中执行mount命令? 该程序为系统中的每个安装点生成输出。 在输出中的每一行的末尾,挂载标志列在括号中。 检查您的挂载点是否设置了noexec标志。

如果是这样,您可以使用以下命令进行更改(例如,假设您的驱动器安装在/mnt/cdrom ):

 sudo mount -o remount,exec /mnt/cdrom 

如果您安装的驱动器是Windows分区(即使用NTFS文件系统格式化的分区),那么您可以按照本文所述安装可执行文件。

我的解决方案是将其重新安装到另一条路径:

 $ sudo umount /dev/sdf $ sudo mount -o exec,defaults,-default_permissions /dev/sdf ~/usbdrive 

列出所有已安装的驱动

 $ cat /proc/mounts 

无论可执行权限如何,您都可以使用Linux链接器运行任何文件,而无需更改挂载选项,如下所示:

/lib/ld-linux.so.2 /path/to/binary-file

或者,在64位系统上:

/lib64/ld-linux-x86-64.so.2 /path/to/binary-file