Pagina 1 di 1

Permessi default

Inviato: ven 25 nov 2005, 13:50
da MAT
Non so se riuscirò a farmi capire... io ci provo. Vorrei che i files copiati/spostati all'interno di un albero di directory assumano particolari permessi. Ad esempio, vorrei che tutti i files che vengono caricati su /home/ftp/pub abbiano permessi 666 e/o un particolare gruppo o proprietario. Come posso fare ciò?

Inviato: ven 25 nov 2005, 15:41
da Paoletta
con uno scriptino ad hoc

Inviato: ven 25 nov 2005, 15:53
da MAT
Io vorrei che venisse fatto automaticamente. Ad esempio, l'utente anonimo butta un file nella condivisione ftp (o nfs che sia) e io vorrei che tale file acquisisse determinati permessi e/o proprietario/gruppo. Che tipo di script fa questo? Un cronjob schedulato ogni (chessò) minuto? Spererei che ci sia qualche soluzione meno impegnativa...

Inviato: ven 25 nov 2005, 16:47
da gallows
Uhm, potresti usare un fs separato con umask in questo caso uguale a 111.
Tecnicamente potresti simulare un fs tramite un file vero e proprio montato in loop.

Inviato: ven 25 nov 2005, 17:26
da MAT
gallows ha scritto:Tecnicamente potresti simulare un fs tramite un file vero e proprio montato in loop.
Come?

Inviato: ven 25 nov 2005, 17:58
da gallows
Crei un file pieno di zeri (dd if=/dev/zero > foo count=$quanto_ti_serve), e successivamente crei la struttura del file-system (mkfs -t $FS foo).

Inviato: ven 25 nov 2005, 18:30
da MAT
Perfetto, questo potrebbe funzionare nel caso usassi filesystem vfat. Ma se volessi usare ext3?

Inviato: sab 26 nov 2005, 15:25
da zzt
Quello che ha detto gallows vale per tutti i filesytem! dipende dall'opzione -t

Inviato: sab 26 nov 2005, 17:44
da MAT
zzt ha scritto:Quello che ha detto gallows vale per tutti i filesytem! dipende dall'opzione -t
Intendo l'opzione umask. Il file system in un file l'ho creato, ma poi come lo monto in modo che ogni file scritto al suo interno venga creato con certi diritti?

Inviato: dom 27 nov 2005, 1:43
da TheSnowBoarder
Per quanto riguarda il montaggio del file system devi dare il comando

Codice: Seleziona tutto

 $ mount FileSystem MntPoint -t ext3 -o loop 
Non penso che il tuo problema si risolva con qualche parametro di umask, anche perché, - per quanto io abbia capito -, l'opzione umask=xyz vale solo per file system non unix-like.

Senza troppa difficolta è invece possibile cambiare così come vuoi tu il proprietario di un gruppo, rendendo la dir di destinazione Set Group Id , valore ottale 2xyz. ( dove xyz rappresentano i valori della normale maschera dei permessi )

Se ad esempio hai

Codice: Seleziona tutto

 
$ ls -l /home/ftp/pub 
drwxr-xr-x     ftp      ftp       /home/ftp/pub

e vuoi che ciascun file copiato su quella dir divenga automaticamente appartente al gruppo ftp ,
dai il comando:

Codice: Seleziona tutto

 $ chmod 2755 /home/ftp/pub 

Inviato: dom 27 nov 2005, 10:34
da MAT
TheSnowBoarder ha scritto:Senza troppa difficolta è invece possibile cambiare così come vuoi tu il proprietario di un gruppo, rendendo la dir di destinazione Set Group Id , valore ottale 2xyz. ( dove xyz rappresentano i valori della normale maschera dei permessi )
Perfetto! Questo era quello che cercavo! Grazie!

Inviato: dom 27 nov 2005, 11:19
da gallows
TheSnowBoarder ha scritto:Non penso che il tuo problema si risolva con qualche parametro di umask, anche perché, - per quanto io abbia capito -, l'opzione umask=xyz vale solo per file system non unix-like.
È vero, pardon.
(Non a caso umask viene impostato in /etc/profile).