2012-06-04 3 views
6

Я создал сборник Jenkins для компиляции и распространения некоторых модулей. Вывод команд сборки (например, make или ant) перенаправляется в файл с именем build.log.Jenkins: Permission denied to 777 file

Самое смешное, что перенаправлять echo в тот же самый файл, используя tee, не удается:

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

Файл существует и имеет 777 разрешений (проверяются с ls -ltrh ../..). Любые идеи, что не так с этой записью?

+2

Вы уверены, что путь к каталогу имеет соответствующие разрешения? Не только файл? – sjakubowski

+0

Вы уверены, что пользователь работает с jenkins с разрешением 777? –

ответ

13

Права доступа к файлу важны, но также являются разрешениями на супер-каталоги этого файла.

Если у вас нет прав на чтение и выполнение в каталогах, с которыми вы проходите, вы не можете следовать относительному пути к файлу. Если вам не хватает разрешений на чтение в каталоге «build.log», вы не можете перечислить файлы в этом каталоге. Чтение, запись и выполнение разрешения имеет значение для каталогов, и они примерно на карту, чтобы:

  • Read = позволяет каталог файлов
  • Write = позволяет создавать/Удаление/Изменение файлов
  • Execute = позволяет изменять каталог в этот каталог

 Смежные вопросы

  • Нет связанных вопросов^_^