Я знаю, этот вопрос задают много раз. Просто искал несколько часов, но я ничего не делал.
То, что я хочу сделать, это настроить небольшой NAS. В качестве теста я взял карту памяти в качестве хранилища. Карта памяти отформатирована в файловой системе fat32. Поскольку fat32 - файловая система Windows, она не совместима с способом изменения разрешений способом Linux. В течение нескольких часов поиска в Интернете я сталкивался со многими различными способами изменения разрешений в процессе монтирования, но не одним, каждый раз, когда для моего смонтированного каталога установлены разрешения 755.
мой fstab выглядит так: / dev / что-то / mnt / что-то vfat ... 0 0
Я много чего перепробовал в поле option Сначала просто значения по умолчанию, затем опция записи, также пробовал опции fmask, dmask и umask.
Чтобы проверить, не был ли fstab ошибкой, я также попытался смонтировать с помощью команды mount, используя опции fstab.
Кто-нибудь знает реальное решение? Просто используете файловую систему NTFS? Использовать другие варианты монтирования?
Если вы используете флэш-накопитель ТОЛЬКО для LINUX, я предлагаю переформатировать и использовать ext2 или ext4.
Если вы используете его с Windows, вы можете использовать жир, используйте эту запись в fstab
/dev/something /mnt/something noauto,users,uid=1000,gid=100,dmask=0000,fmask=0000,utf8 0 0
, вы можете изменить uid или gid, если хотите.
FAT, FAT32 и exFAT — это файловые системы, предназначенные для передачи файлов и совместимости с несколькими системами. Они не учитывают привилегии или разрешения пользователя. Это делает их очень полезными для таких вещей, как USB-накопители, поскольку их можно перемещать с одного компьютера на другой.
Тем не менее, ожидается, что смонтированный раздел в системе Linux будет частью ОС, и поэтому разрешения безопасности должны быть добавлены в команду монтирования (или конфигурацию в файле fstab).
Секрет добавления разрешений заключается в использовании маски в команде/конфигурации монтирования.
Как уже упоминал @Panther, используя параметры dmask (маска каталога) и fmask (маска файла).
/dev/something /mnt/something noauto,users,uid=1000,gid=1000,dmask=0000,fmask=0001,utf8 0 0
В отличие от рекомендации Panther, я установил fmask=0001
, чтобы любой случайный пользователь не смог запустить какой-либо файл в этих каталогах.
Подробнее о разрешениях маски можно прочитать в этом другом ответе.
Я также предлагаю создать пользователя и группу (по крайней мере, группу), чтобы указать, кто на самом деле может получать доступ к этому содержимому и редактировать его.
Удачи.