Разница между adduser и usermod -G -a

В чем разница между

adduser user_name group_name 

а также

usermod -G -a user_name group_name 

На первый взгляд кажется, что они делают одно и то же: добавляют пользователя в группу.

2 ответа

Решение

adduser а также usermod две разные утилиты, которые имеют общий факт, что обе могут добавлять пользователя в группу.

По словам человека adduser

adduser более дружественные интерфейсы для инструментов низкого уровня, таких как useradd, groupadd а также usermod программы.

Больше информации:

  • человек adduser: adduser, addgroup - добавить пользователя или группу в систему
  • man usermod: usermod - изменить учетную запись пользователя

На первый взгляд да.

На второй взгляд usermod -G -a user_name group_name не является правильным.

-G опция должна сопровождаться именем группы (групп).

$ sudo usermod -G -a nogroup muru
[sudo] password for muru:
usermod: group '-a' does not exist
$ sudo usermod -a -G muru nogroup
usermod: user 'nogroup' does not exist

-a может прийти раньше -Gили после имени группы (групп), но не между -G и название группы (групп).

Как примечание стороны, adduser сам использует gpasswd:

$ grep gpasswd $(which adduser)
    my $gpasswd = &which('gpasswd');
    &systemcall($gpasswd, '-a',$existing_user,$existing_group);
Другие вопросы по тегам