User Tools

Site Tools


linux:acl

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
linux:acl [2010/10/23 12:17] rlunarolinux:acl [2010/11/18 23:38] rlunaro
Line 42: Line 42:
  
 Primero, segundo y tercero son ficheros, y uno, dos y tres son directorios. Todos tienen como único propietario "santiago:santiago". Vamos a añadir los comandos necesarios para que además sean visibles por el usuario mediatomb:mediatomb y además, a partir de ahora, todos los nuevos ficheros se comporten igual.  Primero, segundo y tercero son ficheros, y uno, dos y tres son directorios. Todos tienen como único propietario "santiago:santiago". Vamos a añadir los comandos necesarios para que además sean visibles por el usuario mediatomb:mediatomb y además, a partir de ahora, todos los nuevos ficheros se comporten igual. 
 +
 +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:mediatomb:rx test
 +# y luego ponemos permisos de lectura y ejecución para el usuario
 +setfacl -R -m u:mediatomb:rx test
 +</code>
 +
 +A continuación podemos comprobar que la operación se ha ejecutado, ejecutando ''getfacl'' para comprobar el resultado: 
 +
 +<code shell>
 +root:/data# getfacl test/uno
 +# file: test/
 +# owner: santiago
 +# group: santiago
 +user::rwx
 +user:mediatomb:r-x
 +group::r-x
 +group:mediatomb:r-x
 +mask::r-x
 +other::r-x
 +</code>
 +
 +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 ''-d'' en la llamada al comando, y no se aplicarán recursivamente: se coge la que esté disponible. 
 +
 +<code shell>
 +# a partir de ahora, todos los ficheros nuevos tendrán 
 +# permisos de lectura y ejecución para el grupo "mediatomb"
 +setfacl -d -m g:mediatomb:rx test
 +# y también para el usuario "mediatomb"
 +setfacl -d -m u:mediatomb:rx test
 +</code>
 +
 +A continuación hemos creado un directorio llamado "cuatro" con un fichero llamado "cuarto". Veamos si el usuario mediatomb tiene permisos: 
 +
 +<code shell>
 +root:/data/test/cuatro# getfacl cuarto
 +# file: cuarto
 +# owner: root
 +# group: root
 +user::rw-
 +user:mediatomb:r-x #effective:r--
 +group::r-x #effective:r--
 +group:mediatomb:r-x #effective:r--
 +mask::r--
 +other::r--
 +
 +</code>
 +
 +Efectivamente, tiene permisos. 
 +
 +===== Las máscaras =====
 +
 +Puede que el ejemplo anterior no funcione. Eso es debido a lo que se llaman "mascaras": se trata de una especificación que limita a qué es aplicable una acl. 
 +
 +Lo mejor poner como máscara rwx, para que los permisos a aplicar sean los que definamos. Eso se hace con este comando:  
 +
 +<code>
 +# primero ponemos la mascara del directorio
 +setfacl -R -m m::rwx test
 +# y luego ponemos la máscara por defecto
 +setfacl -d -m m::rwx test
 +</code>
  
  
linux/acl.txt · Last modified: 2022/12/02 22:02 by 127.0.0.1