Это возможно сделать? Я хочу смонтировать флешку (vfat) в linux, и пользователь сможет писать на нее, но не читать.

Я пробовал:

mount /dev /sdb1 /media /mpoint -o fmask = 0444

но нет результатов. После этого я все еще могу читать файлы на флешке.

1 ответ1

1

Чтобы решить эту проблему, вам, очевидно, нужна лучшая система разрешений, чем обеспечивает файловая система FAT. Это можно решить с помощью оверлейной файловой системы:

Файловая система FAT монтируется нормально и вообще недоступна для пользователя.
Разрешения обрабатываются файловой системой, которая хранит свои файлы точно так же, как файлы в файловой системе FAT, но может реализовывать дополнительные функции, такие как система разрешений.
(Я не знаю, какая файловая система будет соответствовать вашим потребностям, но я предполагаю, что можно использовать более одной, игнорируя большинство их функций.)

Эта оверлейная или объединенная файловая система - это то, к чему пользователь имеет доступ, и где вы можете устанавливать ограниченные разрешения.
Система разрешений будет обычным стилем Unix/Linux.
Используя это, вы можете просто установить разрешения только на запись для всех файлов и каталогов.
Для навигации по каталогу пользователю не нужно перечислять имена файлов и каталогов в нем; Но ему нужно получить доступ к самим каталогам . и ..

Вы можете разрешить только то, что ему нужно, с особым видом разрешения: каталоги имеют разрешение x, как и файлы, но в первую очередь не исполняемые. Это неиспользуемое разрешение на выполнение каталога используется для обработки именно того, что вам нужно. Если бит r не установлен, но x равен, пользователь все еще может прочитать только тот маленький бит, который ему нужен здесь.

Затем пользователь не может перечислить их, но он может использовать каталоги, которые он сам знает. Он может ** cd в ** известные каталоги.

Чтобы установить правильные разрешения для новых файлов, установите ограничительный umask для пользователя.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .