Permissions

所有人都可以執行的文件,但仍然無法執行?

  • January 13, 2014

如以下程式碼所示:

ll
total 136
-rwxr-xr-x 1 kaiyin kaiyin  19067 May  9  2013 dbmeister.py
-rwxr-xr-x 1 kaiyin kaiyin   1617 Jul 29  2011 locuszoom
-rwxr-xr-x 1 kaiyin kaiyin 112546 May  9  2013 locuszoom.R


./locuszoom
-bash: ./locuszoom: Permission denied

locuszoom全域可執行,但仍不能執行。這些文件位於安裝在/media/data1.

需要重新安裝硬碟,以便exec包含安裝選項。

安裝手冊頁的摘錄

FILESYSTEM INDEPENDENT MOUNT OPTIONS
   ....
   exec   Permit execution of binaries.

您可以通過 2 種方式中的 1 種方式執行此操作。

例子

通過命令行。

$ mount -o remount,exec /media/data1

或者在你的/etc/fstab.

# <file system>      <dir>         <type>    <options>             <dump> <pass>
/dev/sdb1            /media/data1  ext4      rw,exec,noauto        0      0

假設locuszoom是某種 shell 腳本,bash 可能會在腳本開始時告訴您某些內容失敗,而不是您無法執行該腳本。嘗試bash -x ./locuszoom看看它是否在某個地方失敗(假設locuszoom是一個 bash shell 腳本)。

引用自:https://unix.stackexchange.com/questions/109135