linux:acl
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
linux:acl [2010/10/18 13:33] – creado rlunaro | linux:acl [2022/12/02 21:02] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 9: | Line 9: | ||
Pues algo que seguramente habías necesitado muchas veces: por ejemplo, cuando queremos crear un directorio al que '' | Pues algo que seguramente habías necesitado muchas veces: por ejemplo, cuando queremos crear un directorio al que '' | ||
+ | |||
+ | < | ||
+ | Hello. I was browsing the 0 replies thread and though I might give this a go. If you are absolutely certain that you have complied ACLs into your kernel and are still getting this error: | ||
+ | |||
+ | setfacl: test: Operation not supported | ||
+ | |||
+ | then check your /etc/fstab. For ACLs to work you have to mount whatever partition you want with the option acl. As an example, notice /home: | ||
+ | |||
+ | LABEL=/ / ext3 defaults 1 1 | ||
+ | LABEL=/boot /boot ext3 defaults 1 2 | ||
+ | LABEL=/home /home ext3 rw,acl 1 2 | ||
+ | |||
+ | I hope this helps, that is if you haven' | ||
+ | </ | ||
+ | |||
+ | ===== Un ejemplo clásico ===== | ||
+ | |||
+ | |||
+ | Vamos a realizar el ejemplo más clasico: tenemos un conjunto de carpetas que tienen asignado un usuario y grupo concreto, que en nuestro ejemplo es santiago: | ||
+ | |||
+ | Mi estructura de directorios para este ejemplo: | ||
+ | |||
+ | < | ||
+ | test | ||
+ | +--- uno | ||
+ | | ||
+ | +--- dos | ||
+ | | ||
+ | +--- tres | ||
+ | +--- tercero | ||
+ | </ | ||
+ | |||
+ | Primero, segundo y tercero son ficheros, y uno, dos y tres son directorios. Todos tienen como único propietario " | ||
+ | |||
+ | Para ello, añadimos los permisos (recursivamente) para el nuevo usuario y el nuevo grupo: | ||
+ | |||
+ | <code shell> | ||
+ | # primero ponemos permisos de lectura y ejecución para el grupo | ||
+ | setfacl -R -m g: | ||
+ | # y luego ponemos permisos de lectura y ejecución para el usuario | ||
+ | setfacl -R -m u: | ||
+ | </ | ||
+ | |||
+ | A continuación podemos comprobar que la operación se ha ejecutado, ejecutando '' | ||
+ | |||
+ | <code shell> | ||
+ | root:/data# getfacl test/uno | ||
+ | # file: test/ | ||
+ | # owner: santiago | ||
+ | # group: santiago | ||
+ | user::rwx | ||
+ | user: | ||
+ | group::r-x | ||
+ | group: | ||
+ | mask::r-x | ||
+ | other::r-x | ||
+ | </ | ||
+ | |||
+ | El último paso consiste en establecer qué va a pasar a partir de ahora con los ficheros y directorios nuevos que se creen. Eso se define con las ACL's por defecto. Se establecen de la misma forma, pero usando la opción '' | ||
+ | |||
+ | <code shell> | ||
+ | # a partir de ahora, todos los ficheros nuevos tendrán | ||
+ | # permisos de lectura y ejecución para el grupo " | ||
+ | setfacl -d -m g: | ||
+ | # y también para el usuario " | ||
+ | setfacl -d -m u: | ||
+ | </ | ||
+ | |||
+ | A continuación hemos creado un directorio llamado " | ||
+ | |||
+ | <code shell> | ||
+ | root:/ | ||
+ | # file: cuarto | ||
+ | # owner: root | ||
+ | # group: root | ||
+ | user::rw- | ||
+ | user: | ||
+ | group:: | ||
+ | group: | ||
+ | mask::r-- | ||
+ | other::r-- | ||
+ | |||
+ | </ | ||
+ | |||
+ | Efectivamente, | ||
+ | |||
+ | ===== Las máscaras ===== | ||
+ | |||
+ | Confieso que entender exactamente cual es el propósito de la máscara me ha costado un poco, y aún así no entiendo realmente cual es el propósito. En una primera instancia, comprobarás que los permisos establecidos en la máscara limitan los permisos efectivos establecidos en la acl. Así, si los permisos en la máscara son '' | ||
+ | |||
+ | Puestas así las cosas, ¿Porqué??? | ||
+ | |||
+ | Pero dejémonos de teorías. Creo que si los permisos del grupo por defecto son lo suficientemente amplios --'' | ||
+ | |||
+ | Si no es el caso, y las máscaras te dan problemas, que sepas que se pueden cambiar también, incluso se pueden poner máscaras por defecto, pero creo uq eno tienen mucho sentido. | ||
+ | |||
+ | < | ||
+ | # primero ponemos la mascara del directorio | ||
+ | setfacl -R -m mask::rwx test | ||
+ | # y luego ponemos la máscara por defecto | ||
+ | setfacl -d -m mask::rwx test | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
linux/acl.1287408833.txt.gz · Last modified: 2022/12/02 21:02 (external edit)