为什么“useradd”无法将用户添加到主要组?

为什么“useradd”无法将用户添加到主要组?

我使用的命令是:

sudo useradd -g users tom

它应该将汤姆添加到组中用户,但我找不到汤姆用户检查时/etc/组

但是,如果我尝试一下:

sudo useradd -G users jim

我发现 jim 被添加到用户成功地。

有人遇到过这个问题吗?

答案1

笔记: useradd是一个低级实用程序,强烈建议您使用adduser(或usermod)在 Ubuntu/Debian 系统上

  • 最好使用id -Gn username命令来检查主要/次要成员资格,而不是依赖/etc/group
  • 选项-g设置useradd基本的(或登录)组新用户

    • 如果设置为现存的组,这个将不会体现在/etc/group
    • /etc/passwd但您可以在或使用中查看现有的 GIDid -Gn username
    • 示例(组韋萊为 gid 1000):
      $ sudo useradd-g izx tom
      $ grep ^izx /etc/group
      izx:x:1000:
      $ grep ^tom /etc/passwd
      汤姆:x:1008:1000::/主页/汤姆:/bin/sh
      $ id -Gn tom
      韋萊
      
  • 选项-G设置useradd次要的(或补充)组新用户

    • 这些会员资格将要反映/etc/group并利用id -Gn username
    • 不是(与上面/etc/passwd相比)-g
    • 示例(组韋萊为 gid 1000):
      $ sudo useradd-G izx harry
      $ grep ^izx /etc/group
      izx:x:1000:哈利
      $ grep ^harry /etc/passwd
      哈利:x:1009:1009::/主页/哈利:/bin/sh
      $ id -Gn 哈利
      哈利韋萊
      

相关内容