Por que o “useradd” não está funcionando para adicionar um usuário ao grupo primário?

1

O comando que eu uso é:

sudo useradd -g users tom

Ele deve adicionar tom ao grupo usuários , mas não consigo encontrar tom em usuários ao verificar / etc / group .

No entanto, se eu tentar:

sudo useradd -G users jim

Eu acho que jim é adicionado a usuários com sucesso.

Alguém já se deparou com este problema?

    
por xczzhh 24.07.2012 / 16:22

1 resposta

4
  

Nota: useradd é um utilitário de baixo nível e é altamente recomendado que você use adduser (ou usermod ) em vez disso nos sistemas Ubuntu / Debian

  • É melhor usar o comando id -Gn username para verificar a associação principal / secundária em vez de confiar em /etc/group
  • A opção -g para useradd define o grupo principal (ou login) de um novo usuário

    • Se definido para um grupo existente , este não será refletido em /etc/group
    • Mas você pode ver o GID existente em /etc/passwd ou usando id -Gn username
    • Exemplo (o grupo izx é o gid 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
      
  • A opção -G para useradd define o (s) grupo (s) secundário (ou suplementar) de um novo usuário

    • Essas associações serão refletidas em /etc/group e usando id -Gn username
    • Mas não em /etc/passwd (compare com -g acima)
    • Exemplo (o grupo izx é o gid 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
      
por ish 24.07.2012 / 18:23