Как изменить основную группу


11

Я хочу удалить пользователя pserverиз группы apache.

#deluser pserver apache
/usr/sbin/deluser: You may not remove the user from their primary group.

Теперь я хочу добавить новую основную группу, поэтому я запустил следующее;

#usermod -G pserver pserver

Который вернул следующее:

pserver` is now in group `pserver

#groups pserver
pserver : apache pserver

Теперь я хочу снова удалить пользователя из группы apache, но снова получаю ту же ошибку. Как я могу удалить pserverиз основной группы apache?

Ответы:


18

usermodОпция -Gдобавляет дополнительные группы. Вы хотите вариант -gизменить основную группу. Т.е. ваша команда должна была быть:

# usermod -g pserver pserver

Обратите внимание, что это также изменит групповое владение файлами в домашнем каталоге, но не в другом месте.

В более общем смысле, синтаксис для изменения пользователя 'user' на основную группу 'group':

# usermod -g group user

В этой команде неясно, кто является пользователем, а кто - группой, поскольку в этом уникальном случае они оба идентичны, но часто так не бывает.
Kzqai

Текст обновлен, чтобы ответить на комментарий выше
StarNamer


1

Вопрос, поставленный ФП, вводит в заблуждение. Заголовок гласит «Как изменить основную группу», однако в теле вопроса ясно, что цель состоит не только в том, чтобы заменить основную группу, но и удалить предыдущую основную группу .

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

Итак, после того, как вы следите за постом StarNamer , нужно всего лишь

adduser user previous-primary-group

потому что команда usermod исключит вашу предыдущую основную группу из списка групп, к которым вы принадлежите.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.