ACL's no consigo cambiar los permisos

Imagen de sirlluna
0 puntos

Buenas tardes a todos !!
Estoy realizando un mini proyecto para la oficina en la que trabajo.
La idea es la siguiente:
En la oficina todas son máquinas con sistema operativo windows. En otra oficina he instalado un ubuntu Server.
Para aclararnos en la explicación en la oficina con los windows le llamaremos oficinaw i la otra oficina con el ubuntu será la oficinau.

En la oficinaw hay un servidor de ficheros con la tipica estructura.
*[Carpeta_principal]xej datos
*[carpeta_usuario_a] xej pedro
*[carpeta_usuario_b] xej antonio
*[carpeta_publica] xej publica

En la oficinau el ubuntu tiene una carpeta llamada syncdata

Antes de seguir, en el ubuntu srv he creado los siguientes usuarios / grupos:
grupo datos
usuario pedro
usuario antonio
usuario scpdatos (más adelante esplicaré cual sería la función de este usuario.

Contínuo.
El usuario scpdatos es el usuario que se logea vía ssh desde la ofinaw a oficinau mediante winscp. (programa para sincronizar carpetas via ssh)
Una vez me logeo, le digo al programa donde se encuentran la carpeta origen C:\datos y cual será la carpeta destino /syncdata/
Le digo que me sincronice en ambos lados con subdirectorios inclusive.
Una vez hecha la sincronización en el ubuntu srv efectivamente esta la esctructura correcta.

dentro de syncdata me encuentro.

que la carpeta datos tiene el formato:

drwxr-xr-x 4 scpdatos scpdatos 4096 2010-01-30 19:45 datos

Hasta aquí todo normal. Me ha creado una carpeta llamada datos y el usuario propietario y el grupo es scpdatos (que es el usuario que ha hecho la conexion ssh con winscp)

Para poder continuar vamos a suponer que la carpeta datos esta vacia en ambas oficinas.

ejecuto:
# chown root datos
# chgrp datos datos
# chmod 770 datos

drwxrwx-- 4 root datos 4096 2010-01-30 19:45 datos -> por lo tanto el grupo datos tendrá control total de toda la carpeta

Ahora mismo, (y porqué no se me ocurre otra mejor manera de hacerlo), creo a mano las subcarpetas, es decir dentro de datos creo:

pedro
antonio
publica

Como lo he hecho con usuario root se me crea con los permisos de dicho usuario.
Por lo tanto ejecuto:

Para la carpeta pedro:

#chown pedro pedro
#chmod 700 pedro (en un principio solo tendrá acceso pedro)

Ahora bien como también me interesa que el usario scpdatos tenga permisos sobre la carpeta (ya que es el usuario que envia los datos desde oficinaw a oficinau) ya entro en el fabuloso mundo de las ACL's

#setfacl -R -d -m u:scpdatos:rwx /syncdata/datos/pedro

Se ejecuta todo correctamente. Verifico la entrada.

#getfacl pedro

y el resultado.

# file: pedro
# owner: pedro
# group: root
user::rwx
group::rwx #effective:---
mask::---
other::---
default:user::rwx
default:user:scpdatos:rwx
default:group::rwx
default:mask::rwx
default:other::---

Y aquí empieza a mi quebradero de cabeza.
Si no me equivoco sobre el uso de las ACL el comando -d es que me haga esta configuración por defecto, por lo tanto y a mi entender, todo lo que entre en esta carpeta el usuario pedro, el grupo root y el usuario scpdatos, tendrán control total, no ??
Tanto si sicronizo, como si sencillamnte creo un fichero dentro de pedro, no coge los permisos por defecto, sinó le aplica los del propietario en cuestion, vamos que no hace ningún cambio de permisos "automáticos".

Sabéis que puede estar pasando?. el -d sirve para conservar los permisos por defecto ?

Siento toda el rollo, he intentado ser lo más claro posible para que se me haga entender.

Gracias por adelantado.