Некоторое время назад неизвестно для каких целей тестирования я добавил www-data
группе разработчиков, названной devs
. Я хочу удалить его сейчас, но это не позволяет мне выводить следующее сообщение:
$ sudo deluser www-data devs
/usr/sbin/deluser: The user `wwww-data' does not exist.
Однако он существует:
$ cat /etc/passwd | grep www-data
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
и он, безусловно, принадлежит к группе:
$ cat /etc/group | grep devs
devs:x:1004:www-data,other_user
Я, конечно, мог бы отредактировать файл вручную, но что происходит?
PD: Ubuntu 14.04.
$ sudo deluser www-data devs
/usr/sbin/deluser: The user `wwww-data' does not exist.
Ошибка показывает пользователя с 4 W вместо 3. Это опечатка или подсказка?
Выполните команду:
groups www-data
Если первый элемент там "www-data", за которым следует dev, то вам просто нужно использовать команду
usermod -G www-data www-data
Это удалит www-данные из всех групп, кроме www-данных, которые являются первичными.
Если первый элемент не является www-данными, а на самом деле является разработчиком, вам нужно будет выполнить команду:
usermod -g www-data www-data
Это переместит www-data пользователя в группу www-data и из devs. Если после этой команды остались какие-либо группы, вы можете запустить первую команду usermod, чтобы удалить другие группы.
РЕДАКТИРОВАТЬ: если вы хотите использовать юзердел для этой операции вам необходимо убедиться, что разработчики не является основной группой для учетной записи www-data. Если это так, вам нужно будет использовать usermod -g команда для изменения основной группы, поскольку вы не можете удалить основную группу для учетной записи.