Come si ottiene setfacl per impostare le autorizzazioni ACL in modo ricorsivo su Linux?


20

Sto installando un nuovo server e volevo dare a ACL un colpo d'occhio sull'abitudine: chgrp: permessi di stile chmod.

La pagina man di setfacl indica che l'opzione '-R' può essere usata per impostare l'ACL in modo ricorsivo su file e directory.

-R, --recursive Applica ricorsivamente le operazioni a tutti i file e le directory. Questa opzione non può essere miscelata con '--restore'.

Se il mio layout di directory è simile a questo

test/
   subtest/
   subtest.txt

e eseguo

setfacl -Rm d:u:foo:rwX test

L'ACL ha effetto sulla directory 'subtest', ma non sul file subtest.txt.

Penso di poter usare find + exec per aggirare il problema, ma ho intenzione di utilizzare questo server per addestrare qualche altro amministratore e voglio renderlo il più semplice possibile in modo da non rimanere bloccati su alcuni dei più avanzati convegni.

Grazie

Risposte:


43

Provare:

setfacl -Rm u:foo:rwX,d:u:foo:rwX test

per modificare la LCA corrente e quella predefinita. Credo che "d:" riguardi solo la (d) efault ACL delle directory e lascia intatti i file. Quindi, se si crea un nuovo file nella directory, eredita l'ACL della directory principale tramite l'impostazione predefinita.


Ciò ha senso anche se sembra un po 'ridondante
Joe Holloway,

1
Funziona anche per rimuovere il controllo degli accessi. Forse qualcosa per l'effetto di: sudo setfacl -Rx g: gid path

perché il cambio di posizione tra i flag -Re -minterrompe il comando?
pkaramol,

@pkaramol: poiché l' -mopzione accetta un argomento (la specifica ACL u:foo:rwX,d:u:foo:rwXin questo caso) e il cambio dell'ordine delle opzioni separa l'opzione dal suo argomento. Potrebbe anche essere setfaclcodificato aspettarsi prima le sue opzioni principali.
In pausa fino a nuovo avviso.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.