Почему не & ldquo; useradd & rdquo; работа по добавлению пользователя в основную группу?

Я использую команду:

sudo useradd -g users tom

Она должна добавить Тома в группу пользователей , но я не могу найти Тома в пользователи при проверке / etc / group .

Однако, если я просто попробую:

sudo useradd -G users jim

я обнаружу, что jim успешно добавлен пользователям .

Кто-нибудь когда-нибудь сталкивался с этой проблемой?

1
задан 24 July 2012 в 20:31

1 ответ

Примечание: useradd - утилита низкого уровня, и настоятельно рекомендуется использовать adduser (или usermod) вместо этого в Ubuntu / Debian systems

  • Вам лучше использовать команду id -Gn username для проверки первичного / вторичного членства, чем полагаться на /etc/group
  • Опцию -g на useradd устанавливает первичную (или логин) группу нового пользователя

    • Если установлено существующей группы , этот не будет отражен в /etc/group
    • Но вы можете увидеть существующий GID в /etc/passwd или с помощью id -Gn username
    • Пример (group izx равен 1000):
      $ sudo useradd -g izx tom
      $ grep ^izx /etc/group
      izx:x:1000:
      $ grep ^tom /etc/passwd
      tom:x:1008:1000::/home/tom:/bin/sh
      $ id -Gn tom
      izx
      
  • Опция -G для useradd устанавливает вторичную (или дополнительную) группу ( s) нового пользователя

    • Эти членства будут отражены в /etc/group и с использованием id -Gn username
    • Но ] не в /etc/passwd (сравните с -g выше)
    • Пример (группа izx ] - это 1000):
      $ sudo useradd -G izx harry
      $ grep ^izx /etc/group
      izx:x:1000:harry
      $ grep ^harry /etc/passwd
      harry:x:1009:1009::/home/harry:/bin/sh
      $ id -Gn harry
      harry izx
      
0
ответ дан 24 July 2012 в 20:31

Другие вопросы по тегам:

Похожие вопросы: