Ho una condivisione Samba contenente molte cartelle come questa:
share
- folderA
- folderB
- folderC
- folderD
Ci sono circa 20 utenti che accedono a tali condivisioni. Ogni utente può avere il proprio accesso individuale ad alcune delle directory, ad esempio Ben può accedere alla cartella A e alla cartella C, ma non alla cartella B e alla cartella D. Jenny può accedere alla cartella B e alla cartella C e così via.
Non voglio che gli utenti montino ogni cartella di cui hanno bisogno. Voglio che montino la cartella "share" che contiene tutte le sottocartelle. L'accesso è quindi limitato impostando le autorizzazioni di Linux.
Ho creato un gruppo per ogni sottodirectory e ho aggiunto gli utenti a quei gruppi. Il controllo di accesso funziona perfettamente per i file esistenti. Ma ogni volta che un utente crea un file in una sottodirectory, viene negato a tutti gli altri utenti che dispongono dell'autorizzazione per l'accesso in lettura / scrittura in quella directory. Per risolvere questo, ho giocato con il mascheramento della samba ma non riesco a farlo funzionare.
La mia conf Samba si presenta così:
guest ok = no
[global]
workgroup = WORKGROUP
security = user
encrypt passwords = yes
[Share]
path = /var/samba
valid users = @everybody
read only = no
writeable = yes
[folderA]
path = /var/samba/folderA
valid users = @users_folderA
read only = no
writeable = yes
create mask = 770
directory mask = 770
force directory mode = 770
force group = users_folderA
[folderB]
path = /var/samba/folderB
valid users = @users_folderB
read only = no
writeable = yes
create mask = 770
directory mask = 770
force directory mode = 770
force group = users_folderB
[folderC]
path = /var/samba/folderC
valid users = @users_folderC
read only = no
writeable = yes
create mask = 770
directory mask = 770
force directory mode = 770
force group = users_folderC
[folderD]
path = /var/samba/folderD
valid users = @users_folderD
read only = no
writeable = yes
create mask = 770
directory mask = 770
force directory mode = 770
force group = users_folderD
Quindi ovviamente ogni utente è nel gruppo di tutti, quindi possono montare la condivisione con le sottodirectory. L'accesso per ciascuna sottodirectory funziona perfettamente. Ma ogni volta che Ben crea un file nella cartella C, il file ottiene i permessi del file -rwxr - r-- ma dovrebbe essere -rwxrwx ---
Penso che le condivisioni per le singole cartelle non funzionino affatto perché ho provato a impostare scrivibile = no e sola lettura = sì per testarlo. Riavviato smbd e nmbd e rimontato la condivisione di rete (in Windows 10). Gli utenti sono stati in grado di creare file e modificarne i propri.
Questo gira su un lampone pi con raspbian. Il disco rigido con i file è formattato come ext4 e montato tramite fstab.
force create mode = 770
istruzione nellafolderC
sezione della configurazione.