2012-06-04 28 views
6

He creado una compilación de Jenkins para compilar y distribuir algunos módulos. El resultado de los comandos de compilación (por ejemplo, make o ant) se redirige a un archivo denominado build.log.Jenkins: Permiso denegado a un archivo 777

Lo curioso es que la reorientación de echo en el mismo archivo, usando tee, falla: existe

tee: ../../build.log: Permission denied 

El archivo y tiene permisos 777 (marcados con ls -ltrh ../..). ¿Alguna idea de lo que está mal con esta escritura?

+2

¿Está seguro de que la ruta al directorio tiene los permisos adecuados? No solo el archivo? – sjakubowski

+0

¿Estás seguro de que el usuario que ejecuta jenkins es el que tiene el permiso 777? –

Respuesta

13

Los permisos en un archivo son importantes, pero también lo son los permisos en los super directorios de ese archivo.

Si no tiene permisos de lectura y ejecución en los directorios que está recorriendo, no puede seguir la ruta relativa al archivo. Si carece de permisos de lectura en el directorio "build.log", no puede enumerar los archivos en ese directorio. Leer, escribir y ejecutar permisos no importa para los directorios, y que más o menos se asignan a:

  • Lectura = permite Listado de archivos
  • write = Permite/archivos Modificación de Creación/Eliminación de
  • Ejecutar = permite cambiar el directorio a este directorio