Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Crear carpeta en Linux y asignar permisos (https://www.clubdelphi.com/foros/showthread.php?t=38537)

kikecg 18-12-2006 12:23:30

Crear carpeta en Linux y asignar permisos
 
Hola, buenos días.

Tengo una duda y no se alguien me la prodrá resolver. Tengo una aplicación (en Delphi, claro está) que tiene que crear carpetas en un servidor de linux, en una serie de carpetas compartidas. Las carpetas las creo con la función CreateDir. El problema es el siguiente, las carpetas son creadas con todos los permisos para el propietario y solo lectura para el grupo y los demás. Evidentemente el propietario cambia según sea el usuario con el que se inició la sesión en Windows (que lógicamente tiene que estar dado de alta en Samba).

Pongamos que tenemos dos usuarios en windows, usuario1 y usuario2 (por ejemplo). Se inicia la sesión en Windows con usuario1 y se ejecuta la aplicación, que un un momento dado crea la carpeta 0010-00108122, y escribe una serie de archivos en su interior. Mas adelante, se cambia el usuario de Windows a usuario2, se ejecuta la aplicación, y en algún momento el programa busca la carpeta 0010-00108122 para crearla si es necesario o escribir en ella si ya existe. Lo que sucede es que la carpeta existe, pero como el propietario es usuario1 y es el único que tiene todos los permisos sobre esa carpeta, la aplicación no puede escribir en la carpeta y el proceso se detiene.

Ahora lo que yo quisiera saber es si con otra función que no sea CreateDir se puede crear una carpeta y asignarle permisos al mismo tiempo. En la ayuda de Delphi veo que CreateDir no tiene mas opciones ni parametros. ¿Hay alguna función que me permita hacer lo que quiero?, ¿o quiza en linux se puede indicar que todas las carpetas creadas bajo otra hereden los permisos de esta primera?. La cuestión es simple, necesito que todas las carpetas tengan todos los permisos tanto para el propietario como para el grupo.

Se agradece cualquier sugerencia.

Mil gracias.


La franja horaria es GMT +2. Ahora son las 17:55:45.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi