Permiso de escritura pero no de borrado

Ofimatica, juegos, etc

Moderador: frank

Responder
Avatar de Usuario
fVckingmania.hell
Mensajes: 549
Registrado: Sab, 07 Ago 2010, 14:09
Ubicación: /usr/src/yo.tar.bz2

Permiso de escritura pero no de borrado

Mensaje por fVckingmania.hell » Mar, 07 Jun 2011, 10:08

Este tema lo encontre en el blog de la UCI y realmente me dejo bien intrigado y por ello lo traigo a aqui para ver si alguien sabe de esto.
blog humanOS escribió: Buenas noches:

¿Alguien sabe cómo puedo configurar el Samba de tal modo que se puedan crear carpetas y archivos en el recurso compartido pero que no se puedan borrar?

Saludos
Ahora esta persona solo le interesa en Samba a mi me interesaria saber si es posible hacerlo en una carpeta de mi PC para un usuario en especifico.

Salu2

Avatar de Usuario
hugo
Mensajes: 1430
Registrado: Sab, 07 Ago 2010, 14:09
Ubicación: La Habana
Contactar:

Re: Permiso de escritura pero no de borrado

Mensaje por hugo » Mar, 07 Jun 2011, 12:01

Segun alguna documentación, en samba no es posible replicar las listas de control de acceso de Windows que permiten crear y modificar archivos y directorios pero no borrarlos. Cualquier usuario que tenga permisos de escritura en un directorio, puede eliminar archivos de este.

Sí es posible prevenir la eliminación de un archivo si se le aplica el bit inmutable, pero una vez que el archivo se hace inmutable no puede ser eliminado ni siquiera por su dueño (hasta que se le deshabilite el bit), por ejemplo:

Código: Seleccionar todo

$ cd ~
$ touch miarchivo
$ sudo chattr +i miarchivo
$ rm miarchivo
rm: remove write-protected regular empty file `miarchivo'? y
rm: cannot remove `miarchivo': Operation not permitted
Además, no todas las distribuciones de Linux honran el bit inmutable.

En cuanto a proteger un archivo en Linux para que ningun usuario que no sea el propietario pueda eliminarlo, esto puede conseguirse con el "sticky bit". Por ejemplo, una aplicación frecuente suele ser utilizarlo en el directorio /tmp para que unos usuarios no puedan eliminar archivos temporales con los que otros trabajan.

Ponerle el sticky bit a un archivo, puede hacerse simbólicamente de esta manera:

Código: Seleccionar todo

chmod u+t miarchivo
Si se quiere hacer de manera absoluta y por ejemplo el archivo tiene permisos 666, sería de esta manera:

Código: Seleccionar todo

chmod 1666 miarchivo
Lo único que necesita el mal para triunfar es que los hombres buenos no hagan nada.
- Edmund Burke

Responder