Я хочу создать специальную структуру группового каталога для моих пользователей.
/home/groupA
- домашняя папка для groupA
где каждый пользователь groupA
может создавать / редактировать / удалять файлы
/home/groupA/Public
- Общая папка, в которой каждый пользователь может читать файлы
/home/groupA/Public/Dropbox
- Папка, в которую каждый пользователь может записывать файлы, но только пользователи groupA
может получить доступ к этому каталогу и создавать / редактировать / удалять файлы
Теперь у меня есть:
4 drwxrwx--t 10 nobody groupA 4096 Feb 18 15:44 /home/groupA
4 drwxrwxr-x 7 nobody groupA 4096 Feb 18 15:40 /home/groupA/Public/
4 drwxrwx-w- 10 nobody groupA 4096 Feb 18 15:55 /home/groupA/Public/Dropbox
Мой smb.conf
содержит следующие записи
[groupA]
path = /home/groupA
comment = Folder for users of groupA
browseable = yes
read only = no
create mask = 0770
directory mask = 0770
force group = groupA
[groupA Public]
path = /home/groupA/Public
comment = Admins Public
Browseable = yes
write list = @groupA
create mask = 0775
directory mask = 0775
[groupA DropBox]
path = /home/groupA/Public/Dropbox
comment = groupA Dropbox
read only = no
valid users = @groupA
browseable = yes
inherit owner = yes
directory mode = 3770
force directory mode = 3770
Рабочая часть заключается в том, что пользователи groupA
может получить доступ и полностью использовать /home/groupA
. Все пользователи могут получить доступ /home/groupA/Public/
и прочтите оттуда файлы.
Моя проблема в том, что все пользователи, даже те, кто не в groupA
, может получить доступ к /home/groupA/Public/Dropbox
и посмотреть все файлы. Я просто хочу, чтобы они могли помещать туда файлы, но не видеть содержимое папки и запретить им удалять любые файлы в ней.
Кто-нибудь знает, в чем может быть проблема и как я могу ее исправить?
К сожалению, невозможно создать папку, в которой нельзя отображать содержимое и можно записывать файлы, Windows сходит с ума, когда видит что-то подобное.
Большинство пользователей не могут справиться с чем-то подобным через FTP, где это довольно распространенная конфигурация.
Вам нужно будет использовать какой-то веб-сайт, позволяющий размещать файлы.
Мы делаем такие вещи для нашего школьного округа в Debian Linux. Мы настраиваем акции как таковые в smb.conf
:
[Classwork]
path = /usr/local/share/Classwork
inherit permissions = yes
writeable = yes
comment = "All users can read contents and subfolders; only staff can write to it"
[Dropbox]
path = /usr/local/share/Dropbox
writeable = yes
inherit permissions = Yes
comment = "All users can see the Dropbox folder, and each staff member has a group. Students (or teachers) can drag files into the folder, but not open them up. Only the staff member who owns the folder can open it, or its contents"
Установите разрешения для папок в файловой системе, а не в Samba. Попробуйте это и сообщите об этом.
Вы хотите, чтобы у выпадающего списка были права на запись, но не на чтение. Таким образом, 773 позволит другим записывать файлы в папку, но только владелец и группа могут их читать.
Отредактировано: неверно истолковал предпосылку Dropbox.
Итак, оказывается, я неправильно понял весь вопрос и не знаю, в чем проблема. Но я нашел Эта статья, что может быть полезно, если вы еще не читали его.