Linux 如何运行C++;Ubuntu 10.10中NTFS上的二进制文件?

Linux 如何运行C++;Ubuntu 10.10中NTFS上的二进制文件?,linux,eclipse-cdt,file-permissions,ubuntu-10.10,Linux,Eclipse Cdt,File Permissions,Ubuntu 10.10,刚刚安装了Ubuntu 10.10。以前我有Ubuntu 10.04。我在Ubuntu和Windows之间有一个共享分区,它是NTFS。我将开发文件(Eclipse C++项目文件)存储在该分区中。 问题是:使用10.04,一切都正常,但现在我无法运行任何驻留在NTFS分区中的程序。Eclipse说: Error starting process. Exec_tty error:Cannot run program "/media/../Eclipse/Hello/Debug/Hello": U

刚刚安装了Ubuntu 10.10。以前我有Ubuntu 10.04。我在Ubuntu和Windows之间有一个共享分区,它是NTFS。我将开发文件(Eclipse C++项目文件)存储在该分区中。

问题是:使用10.04,一切都正常,但现在我无法运行任何驻留在NTFS分区中的程序。Eclipse说:

Error starting process.
Exec_tty error:Cannot run program "/media/../Eclipse/Hello/Debug/Hello": Unknown reason
当我试图在终端中执行它时,它会说:

bash: ./Hello: Permission denied
我知道这是权限问题,因为NTFS文件系统不支持Unix权限,但在10.04上如何做到这一点是没有问题的。此版本是否为NTFS文件系统添加了任何限制

有没有人遇到过类似的问题并知道如何解决


谢谢。

在Ubuntu版本之间,ntfs文件系统的默认装载选项可能会改变

在/etc/fstab中找到控制相关装入点的行

首先要尝试的是:确保选项字符串不包含
noexec
。如果有,请将其删除,
umount
,重新安装,然后查看是否可以修复它

如果noexec不存在或您仍然无法执行,则检查
user
users
是否是选项之一。由于
user
意味着noexec(通常),您可能需要添加(在
user
之后)选项
exec
,因此结果如下:

user,exec
如果
user
存在,请尝试进行此更改,然后
umount
并重新装载

如果此时仍无法执行,请在相关装载点的选项字符串中添加或设置以下装载选项:

fmask=002

这可能过于宽松,但对于单用户系统来说应该没问题。这告诉mount,默认情况下,文件系统中的所有文件都应视为(除其他外)可执行文件。现在
umount
并再次重新装载,看看它是否工作。

我同意,Ubuntu 10.10更改了ntfs文件系统的默认装载选项


有些人认为这只是供参考,不管使用什么语言来生成可执行文件。你能重新编译二进制文件并随时进行测试吗?
main.o
是一个对象文件,不是可执行文件,所以你不应该尝试执行它。运行实际的可执行文件时会发生什么情况?是的,我不应该尝试运行对象文件。我是说你好。它说的是同样的事情,那就是被拒绝的许可。是的,我可以重新编译二进制文件,但它保持不变。谢谢你的帮助。我已经通过终端挂载我的分区来实现它,但是我想用一个GUI,比如Places->Data。我应该修改什么以使其工作?My/ect/fstab现在出现如下错误:
proc/proc-nodev、nosuid、exec 0 0#/was-on/dev/sda4在安装过程中UUID=51969b4e-cfee-4f40-9896-c73460ef462e/ext4 errors=remount ro 0 1 UUID=9C5AE9025AE8DA52/媒体/数据ntfs默认值,exec 0 0
我添加了最后一个条目以便自动挂载。如果fstab条目存在,则默认情况下应使用它,除非nautilus正在做一些古怪的事情。有人谁是一个侏儒出口可能需要回答这一部分的问题。我希望,如果您有fstab条目并手动安装文件系统,然后尝试通过Places菜单导航,那么它应该使用指定的选项自动安装。如果这不起作用,那么我就无能为力,因为我对侏儒一无所知。