Назад | Перейти на главную страницу

Разрешения на каталог для учетной записи пользователя linux

Я настраиваю общую папку для нескольких пользователей в Amazon AMI (подробности внизу). Я пытаюсь предоставить доступ к папке, в частности, одному пользователю, который не работает.

Моя идея заключалась в создании группы пользователей под названием «репозиторий», в которую я бы добавил пользователей. Я выполнил следующие команды:

sudo groupadd repository
sudo usermod -a -G repository jenkins
sudo usermod -a -G repository ec2-user

sudo mkdir /repository
sudo chown jenkins:repository /repository

sudo chmod 770 /repository

Теперь я ожидаю, что у пользователя jenkins не возникнет проблем с созданием каталога в этой папке. Однако, похоже, это не работает.

sudo runuser -l jenkins -c "mkdir /repository/hello"

не создает каталог. Пробуем использовать ec2-пользователя, который также входит в группу "репозиторий".

sudo runuser -l ec2-user -c "mkdir /repository/hello"

успешно создает каталог. Двойная проверка с использованием groups jenkins и groups ec2-user проверяет, что оба пользователя входят в группу «репозиторий».

Где я ошибаюсь? Является ли проблема пользователя jenkins учетной записью службы?


Рассматриваемая учетная запись Дженкинса предназначена для Веб-сервер Jenkins и пользователя можно изменить, но я хотел бы оставить его таким же.

Вот подробности ОС:

>cat /etc/*-release
NAME="Amazon Linux AMI"
VERSION="2015.03"
ID="amzn"
ID_LIKE="rhel fedora"
VERSION_ID="2015.03"
PRETTY_NAME="Amazon Linux AMI 2015.03"
ANSI_COLOR="0;33"
CPE_NAME="cpe:/o:amazon:linux:2015.03:ga"
HOME_URL="http://aws.amazon.com/amazon-linux-ami/"
Amazon Linux AMI release 2015.03

Нашел решение, но не знаю, почему оно работает После еще нескольких поисков я закончил тем, что сменил оболочку для jenkins пользователь из /bin/false к /sbin/nologin и после все заработало нормально. Может ли кто-нибудь объяснить, почему использование /bin/false вызвало бы это?

Так что в /etc/passwd

из: jenkins:x:498:498:Jenkins Continuous Integration Server:/var/lib/jenkins:/bin/false

кому: jenkins:x:498:498:Jenkins Continuous Integration Server:/var/lib/jenkins:/sbin/nologin