Linux

NTFS 分區未正確掛載,儘管擁有所有權但無法執行

  • October 1, 2015

我正在嘗試執行位於我擁有的 NTFS 分區上的腳本。

我擁有掛載點,即~/Migration.

ls -l在包含掛載點的目錄中顯示我

drwxrwxrwx 1 technomage technomage   4096 Sep 30 18:04 Migration

儘管是整個結構的所有者,從掛載點開始,並且擁有 rwx 權限,但它阻止我執行這個腳本,startup.sh. Bash 給了我以下錯誤:

bash: ./startup.sh: Permission denied

在包含腳本的目錄中,ls-la顯示:

drwxrwxrwx 1 technomage technomage 4.0K Oct  1 12:51 .
drwxrwxrwx 1 technomage technomage 4.0K Oct  1 12:51 ..
-rwxrwxrwx 1 technomage technomage 1.9K Oct  1 12:51 startup.sh

我仍然無法執行startup.sh

我知道 linux 中 NTFS 分區的權限可能有點複雜,所以我盡可能地/etc/fstab設置了權限、所有者和遮罩:

UUID=6F537BB96F6E0CBC /home/technomage/Migration ntfs-3g rw,exec,user,umask=000,uid=1000,gid=1000 0 0

然後我繼續sudo umount Migration,然後重新載入 fstab 文件配置sudo mount -a。重裝成功。

儘管如此,即使使用root,我仍然無法執行腳本。

mount | grep sda6命令向我顯示以下內容,它以某種方式告訴我分區未正確安裝或使用我給它的配置:

/dev/sda6 on /home/technomage/Migration type fuseblk (rw,nosuid,nodev,noexec,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096,user)

我正在執行 Debian Jessie,甚至進入了stretch 的儲存庫以獲取最新版本的ntfs-3g驅動程序,認為這是某種錯誤.. 沒有骰子。

我不太確定出了什麼問題。請告訴我我是如何錯誤配置安裝 NTFS 分區的?我需要完全訪問它。

您可以在 中選擇/etc/fstab,但順序很重要;exec必須緊隨其後, user因為user強加noexec(除其他外)。因此,您的/etc/fstab條目應如下所示:

UUID=6F537BB96F6E0CBC /home/technomage/Migration ntfs-3g rw,umask=000,uid=1000,gid=1000,user,exec 0 0

更改為 後/etc/fstab,解除安裝驅動器然後sudo mount -a重試。

此外,請確保您的uid和是正確的(通過在您的使用者登錄時gid執行命令)。id

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