Hice esta misma pregunta para los buzones de los estudiantes en la lista de correo de samba hace unos años (http://lists.samba.org/archive/samba/2008-September/143610.html) y la respuesta ha funcionado para nosotros. Necesita atributos acl extendidos en su sistema de archivos (del paquete acl), aquí está la respuesta de Jeremy Allison ...
Ok, el problema es que los estudiantes necesitan poder leer el directorio que contiene para poder arrastrar y soltar nuevos archivos allí. La razón es que Samba necesita poder escanear el directorio en su nombre para realizar búsquedas que no distinguen entre mayúsculas y minúsculas.
Pero siempre y cuando no le importe permitir que los estudiantes vean los nombres de los archivos de los demás, puede configurar un DropBox para que los estudiantes puedan escribir en él (y sus propios archivos) pero no editar o ver otros archivos.
En primer lugar, debe asegurarse de que los archivos creados en el directorio de DropBox no sean propiedad del grupo primario del alumno, sino del propietario del grupo del directorio de DropBox. Entonces :
profesores chgrp DropBox
para que sea propiedad del grupo de profesores. Luego configure el bit setgid en el directorio de DropBox para asegurarse de que los archivos creados allí tengan un grupo propietario de maestros.
chmod g + s DropBox
Luego, asegúrese de que un archivo en DropBox pueda ser renombrado o eliminado solo por el propietario del archivo, o por el propietario del directorio, o por root (los mismos permisos que tiene / tmp).
chmod + t DropBox
Luego, permita que los estudiantes escriban en el directorio agregando una ACL
setfacl -mg: estudiantes: rwx DropBox
Siempre y cuando el acl predeterminado esté configurado para que "otros" no tengan permisos, los archivos escritos por un estudiante en ese directorio serán de su propiedad pero tendrán un grupo propietario de "maestros", y los estudiantes no podrán leer cada uno de ellos. otros archivos
Si necesita que los archivos sean propiedad del propietario del directorio, no de los estudiantes que los crearon, debe configurar un recurso compartido por separado como se describe anteriormente, pero luego agregar el parámetro de nivel de recurso compartido:
heredar propietario = sí
lo que hará que los archivos creados dentro de los directorios en ese recurso compartido sean propiedad del directorio contenedor, no del propietario creador.
No creo que esto sea posible, ya que tienes que leer un disco "solo de escritura" para mostrar el contenido.
Si tuviera que vender dicho dispositivo, ¿cómo podría alguien verificar que funcionara? Quizás este sea uno para kickstarter.
fuente
Esta no es una respuesta, sino más bien un pensamiento y posiblemente otra pregunta. Para mí, esto suena como si se pudiera implementar a través de algún tipo de gancho o disparador.
Algunos programas en segundo plano pueden ver la carpeta de solo escritura (no mediante sondeo, se puede notificar con FAM o algo así) y luego mover cada archivo fuera de la carpeta de solo lectura tan pronto como aparezca.
fuente