Bionic - добавление группы с помощью usermod -aG не вступает в силу до следующей перезагрузки

Я только что установил Xubuntu 18.04 (Bionic) и, столкнувшись с этой проблемой, я хотел сообщить об этом как об ошибке на панели запуска, но сначала подумал о подтверждении этого. Дело в том, что когда я добавляю группу пользователю, как показано ниже, это должно вступить в силу при следующем входе пользователя в систему, верно?

sudo usermod -aG docker prahlad

Это поведение работало до 16.04 с того, что я помню, но сегодня я выходил из системы и возвращался несколько раз, но когда я вижу свои группы, запустив groups команда, я не могу видеть докер добавлен к нему. Однако, когда я создал новую оболочку, я смог увидеть новую группу:

su prahlad -

И, конечно же, когда я полностью перезагрузил свой ноутбук, я смог увидеть группу докеров. Может кто-нибудь подтвердить, является ли это новой проблемой, введенной в Bionic? Или, может быть, это просто происходит с установленным докером?

1 ответ

Это НЕ "проблема", это просто работа групп.

login программа читает /etc/groups установить членство в группе вашего начального процесса, который будет наследоваться вниз процессам, которые он создает.

В конце концов, процесс делает sudo usermod -aG docker prahlad, который обновляет /etc/groups, но, по замыслу, НЕ меняет членство в группе родителя родительского процесса, который запустился sudo usermod -aG docker prahladи не работает login редактировать членство в группах ваших процессов.

Как системный администратор, я уверен, что хочу добавить случайного пользователя в какую-то случайную группу, БЕЗ порчи с членством в МОЕЙ группе.

Если вы хотите немедленно использовать свое новое членство в группе, вы можете прочитать man newgrp, и делать:

sudo usermod -aG docker prahlad
newgrp docker
Другие вопросы по тегам