Linux
NTFS 分區未正確掛載,儘管擁有所有權但無法執行
我正在嘗試執行位於我擁有的 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