Не можете предоставить права на запись для /root?

Не можете предоставить права на запись для /root?

Я пытаюсь предоставить пользователю jenkinsдоступ на запись в /root.

Во-первых: Да, это не то, что вы обычно рекомендуете делать. Но по какой-то причине Jenkins настаивает на записи и чтении из корневого домашнего каталога. Если вы сразу поймете, почему он это делает и как это остановить, я с радостью посмотрю. Но сейчас, как бы сильно это ни противоречило моему здравому смыслу, мне нужно дать jenkins права на запись в /root.

Что касается безопасности, то там нет ничего, /rootчто я бы не добавил сам.

Вот что я запускаю (изначально вошел в систему как root):

~# chmod o=rwx /root
~# sudo su jenkins
/root$ touch test
touch: cannot touch 'test': Permission denied
/root$ cd .pip/
/root/.pip$ touch test
/root/.pip$ ls
pip.conf  pip.log  test

Вот это и странно.

Я уже дал разрешения на чтение/запись для подпапок, внутри /rootкоторых все работает нормально. Но я все еще не могу писать в сам каталог.

Кто-нибудь знает почему?

решение1

Альтернативой предоставлению всем права записи в /rootкаталог является использование ACL для предоставления пользователю Jenkins доступа к /rootкаталогу.

~# setfacl -m "u:jenkins:rwx" /root

В большинстве установок Ubuntu уже включены списки контроля доступа, но вам, возможно, придется сначала установить пакет acl. Кроме того, вы можете использовать флаг, Rчтобы сделать действие рекурсивным.

Связанный контент