Все файлы на автомонтированном разделе NTFS помечены как исполняемые

Я установил раздел NTFS для автомонтирования через fstab:

# /etc/fstab: static file system information. # # Use 'blkid' to print the universally unique identifier for a # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # # <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc nodev,noexec,nosuid 0 0 # / was on /dev/sda7 during installation UUID=e63fa8a2-432f-4749-b9db-dab328807d04 / ext4 errors=remount-ro 0 1 # /boot was on /dev/sda4 during installation UUID=e9ad1bb4-7c1f-4ea9-a6a5-799dfad71c0a /boot ext4 defaults 0 2 # /home was on /dev/sda8 during installation UUID=eda8c755-5448-4de8-b58c-9cb75823c22d /home ext4 defaults 0 2 # swap was on /dev/sda9 during installation UUID=804ff3a7-e5dd-406a-b63c-e8f3c635fbc5 none swap sw 0 0 #Windows-Partition UUID=368CEBC57807FDCD /media/Share ntfs defaults,uid=1000,gid=1000,noexec 0 0 

Как вы можете видеть, я добавил бит noexec в конфигурацию. Зачем? Поскольку любой файл, который я создаю или перемещаю в раздел, автоматически помечен как исполняемый файл.

Проблема в том, что нет способа изменить это через наутилус. Я не могу снять флажок «Разрешить исполняемый файл как программу».

К сожалению, опция noexec не помогает. Это только предотвращает отображение nautilus диалогового окна «run» или «read», но не меняет флаг исполняемого файла.

Есть ли способ исправить это?

Опция noexec не имеет ничего общего с фактическими разрешениями; это просто не позволяет ничего запускать из этого раздела:

 ~ $ ls -l test.sh -rwxr-xr-x 1 jw jw 28 Aug 30 13:05 test.sh ~ $ ./test.sh Hello world ~ $ sudo mount -o remount,noexec /home ~ $ ./test.sh bash: ./test.sh: Permission denied ~ $ ls -l test.sh -rwxr-xr-x 1 jw jw 28 Aug 30 13:05 test.sh 

Как вы видите, как только раздел монтируется с опцией noexec , test.sh не может быть запущен; но сами разрешения не изменились.

NTFS не поддерживает исполняемый бит. Способ, которым система NTFS воспринимается системой и как устанавливаются разрешения, зависит, следовательно, только от того, как она была смонтирована. Обычно это делается с опцией монтирования umask . Это также объясняет, почему вы не можете изменять разрешения: нет возможности их сохранить, потому что NTFS не поддерживает их.

К сожалению, если вы установите все с помощью «неисполняемого» бита, вы не сможете изменить его в каталогах, потому что они должны быть исполняемыми для ввода. Вы можете использовать опции dmask и fmask для установки разрешений по умолчанию отдельно для каталогов и файлов в смонтированной системе NTFS.

С январской помощью мне удалось найти следующие варианты fstab, которые решили мою проблему:

 umask=0000,fmask=0111 

Запись fstab для моего раздела NTFS выглядит следующим образом:

 #Windows-Partition UUID=368CEBC57807FDCD /media/Share ntfs defaults,uid=1000,gid=1000,umask=0000,fmask=0111 0 0 

Источник: http://www.linuxquestions.org/questions/slackware-14/mount-ntfs-so-that-files-are-not-executable-buts-directories-are-363315/

Изменить. Изменение этих параметров также означает, что вы не сможете установить что-либо на исполняемый файл на вашем диске NTFS. В моем случае это не проблема, поскольку я не планирую хранить какие-либо исполняемые файлы в этом разделе.