У меня возникла проблема с доступом к файлу.Jenkins Linux доступ к файлу или проблема с группой
система Linux является RedHat 5.5
На этой машине, когда я войти, как данный пользователь: deploy_user, я вижу, что у меня есть право на доступ к/путь/к/в/папке/подпапке/файла. TXT
Ls -l/путь/к/шоу/папка (это означает, Шифрование до этого пути я могу видеть содержимое):
13:50:53 drwxr-x--- 2 root dbgroup 4096 Apr 27 14:38 subfolder
и в папке подкаталоге, file.txt имеет followin Доступ к г (Ls -l выход)
13:50:53 -rwxr----- 1 root dbgroup 1620 Dec 9 15:28 file.txt
На сервере в $ подскажите, если я: идентификатор deploy_user Я вижу, я (будучи deploy_user) в dbgroup (т.е. любой в Группа dbgroup может изменить каталог на вложенную папку) и может читать файл file.txt.
Когда я бегу те же команды в свободном стиле Дженкинс работы и выполнения задания на этой Linux машине в качестве узла/ведомый (где Дженкинс подключается только к этому узлу/Ведомый, как пользователь deploy_user, используя его SSH ключи успешно), я не могу cd (изменить каталог) и список или ls и прочитать или cat этот файл.
ПРИМЕЧАНИЕ: Я ограничиваю задание jenkins работать на конкретном подчиненном устройстве (используя метку), то есть он будет запускать задание только на данной машине (как я уже упоминал выше).
В работе Дженкинс, все я бегу следующие команды:
echo "I'm `whoami`"
echo "I'm in: $(id `whoami`)"
echo
groups
echo
echo "Again, my groups for: $(groups `whoami`)"
echo
cat /etc/group | grep "^dbgroup"
echo
echo
cd /path/to/the/folder
pwd && echo "It works! upto /path/to/the/folder path in Jenkins job."
echo
echo
cd /path/to/the/folder/subfolder || echo "cd to subfolder - didnt work"
echo
ls -l /path/to/the/folder/subfolder/file.txt || echo "ls on file.txt - didn't work"
echo
echo "Sleeping for 60 seconds ..." && sleep 60
Основной выход из Дженкинс работы является:
13:50:53 I'm - deploy_user
13:50:53 I'm in: uid=3000(deploy_user) gid=3000(deploy_user) groups=4000(deployer),6001(dba),6081(osinstall),10121(dbgroup)
13:50:53
13:50:53 deployer dba osinstall
13:50:53
13:50:53 Again, my groups for: deploy_user : deployer dba osinstall dbgroup
13:50:53
13:50:53 dbgroup:x:10121:user1,user2,appuser3,svcuser4,deploy_user
13:50:53
13:50:53
13:50:53 /path/to/the/folder
13:50:53 It works! upto /path/to/the/folder path in Jenkins job.
13:50:53
13:50:53
13:50:53 /tmp/hudson58581.sh: line 7: cd: /path/to/the/folder/subfolder: Permission denied
13:50:53: cd to subfolder - didnt work
13:50:53
13:50:53 ls: /path/to/the/folder/subfolder/file.txt: Permission denied
13:50:53 ls on file.txt - didn't work
13:50:53
13:50:53 Sleeping for 60 seconds ...
Любая идея, почему выход групп и групп deploy_user различны. команда groups по умолчанию работает для текущего пользователя в журнале (это whoami, и он показывает, что я deploy_user).
Я также проверил идентификатор_группы в низкоспиновое -l выход как для подпапок/file.txt и это 10121
Спасибо.
Являются ли ваши системы случайным образом использованием другого метода проверки подлинности помимо локальных файлов (например, NIS +/Active Directory/etc)? Согласованы ли они с точки зрения метода проверки подлинности? Они оба монтируют папку из того же места и из того же источника? –
да крепления и все одинаковы. –