为什么 Ubuntu 拒绝从 NTFS 分区执行文件?

Iva*_*van 15 filesystem permissions fstab ntfs executable

我使用以下 fstab 行挂载了一个 NTFS 分区(在那里我有一些 Linux 二进制文件和脚本以及 Win32 和数据文件):

/dev/sda5 /mnt/dat ntfs-3g rw,dev,exec,auto,async,users,umask=000,uid=1000,gid=1000,locale=en_US.utf8,  errors=remount-ro 0 0
Run Code Online (Sandbox Code Playgroud)

所有文件似乎都设置了可执行属性,但是如果我尝试实际执行它们,则会收到“权限被拒绝”错误。即使使用 sudo。即使执行(以及读取和写入)权限授予每个人,并且所有文件所有者都设置为用户。

那么我该如何设置系统才能从 NTFS 运行 Linux 二进制文件呢?

小智 5

我有相同的问题,在我的情况的解决办法是写去exec安装选项之后users选项。那是因为该users选项隐式激活了该noexec选项,因此您必须显式指定exec.

我从“为什么我不能在 Linux 的另一个分区上运行程序?” 在 Unix 和 Linux 堆栈交换上


Tho*_*ard 2

聊天频道里,不少人都在思考这个问题。其中一个人建议您看一下乔治·爱迪生对这个问题的回答,看看它是否对您有帮助:
.exe 文件权限失败

请注意,您必须在 NTFS 分区上有额外的挂载选项,才能直接从这些分区执行二进制文件 - 该users选项,以及该exec选项。 users允许非超级用户卸载(以及安装),并exec允许从中运行可执行文件(但是,请记住,这并不能保证一切正常)。

  • 我对 .exe 文件没有任何问题。问题不是关于在 Linux 上运行 Windows 可执行文件,而是关于运行位于 Windows 分区上的 Linux 可执行文件。 (5认同)
  • 叹息……请仔细阅读。 (3认同)

小智 1

这就是 udisks 软件包的“功能”,默认情况下,限制对 ntfs 分区(或其他非 Linux 分区)的权限修改。

要启用此功能,您可能需要阅读,

启用设置NTFS分区文件的可执行权限

  • 这个答案中的链接已失效:( (10认同)