Запретить пользователю читать файлы из файловых систем vfat, но разрешить запись

289
Raydel Miranda

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

Я пробовал:

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

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

0
Какая операционная система точно? Ramhound 10 лет назад 0
Извините, я забыл уточнить об этом, это Linux. Raydel Miranda 10 лет назад 0
Почему голосование против? Мне нужно какое-то объяснение, если некоторые из вас думают, что я делаю что-то не так или мой вопрос плохой. Raydel Miranda 10 лет назад 0
Я проголосовал - подумав, вопрос на самом деле довольно интересный. Volker Siegel 10 лет назад 0
Я подумал о более сложном подходе к его решению и написал другой независимый ответ (удалил старый) - но я думаю, что это гораздо больше усилий, чем вы планировали. Но если вам интересно, я могу попытаться найти подходящую файловую систему. Volker Siegel 10 лет назад 0

1 ответ на вопрос

1
Volker Siegel

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

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

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

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

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

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

Это выглядит очень интересно, предположим, что я хочу использовать «ext3» в качестве файловой системы, вы можете опубликовать пример? Поддерживается ли это в ядре или только для одного дистрибутива (например, Ubuntu). Raydel Miranda 10 лет назад 0

Похожие вопросы