错误消息ID:登录后找不到组ID的名称


15

背景

Trevor作为包装盒上的开发人员之一登录到ssh://foobar.university.edu的帐户,他得到以下消息:

 id: cannot find name for group ID 131

Trevor然后使用

 vim /etc/group

问题

Trevor发现/ etc / group文件中的任何地方没有131。

然后Trevor运行id ...

 > id trevor
 uid=4460(trevor) gid=131 groups=48(foobar),51(doobar),131

要发现他的主要人群显然没有名字。

问题

  • 可能是什么原因导致foobar.university.edu框上的这种情况?
  • 假设trevor想要解决此问题(例如,仅通过创建一个映射到GID 131的“ trevor”组),这样做的最佳方法是什么,而又不破坏服务器上的任何其他内容?

或者,也许您对/ etc / group文件具有错误的访问权限。
帕维尔·帕特林

Answers:


18

可能发生的情况是UID和GID是通过LDAP提供给服务器的。如果该/etc/group文件不包含GID的转换,则服务器管理员可能只是无法更新组定义。你能做什么?不多。用户标识由管理员控制。(现在,如果您恰巧具有ROOT特权,则可以将组添加到中/etc/group。还应该检查其他用户帐户是否正在使用同一组,如果使用的是相同用户,请适当命名该组)。


6
谢谢回复。附加说明:如果您具有足够的特权;可以通过groupadd --gid 131 foobargroup
dreftymac

@dreftymac假设运行id报告的uid,gid和groups具有相同的ID,我想这样做安全groupadd -gID username吗?
2016年

如果此帐户是使用带有ldap / ad的sssd配置的,则另一种可能性(如果您具有系统的root访问权限)是您的ldap_group_search_base属性不够通用,并且不包含系统正在搜索的组。
没人

3

没有为我的用户“杰克逊”分配组时,发生了这种情况。我知道我的用户的单独组ID是1000(当创建一个用户$ adduser且未定义任何参数时,将为该用户分配下一个可用的ID(超出999)。第一个获得uid 1000和gid 1000)。

此警告表示您的用户不属于组,因此您需要将用户添加到组中。让您的管理员帮助您喜欢提到的@sparticvs,或者如果您具有root特权/这是您的计算机,则可以执行以下操作:

$ addgroup [your_user_name]
$ usermod -a -G [your_user_name] [your_user_name]

那应该修复它(未经测试

我所做的只是(高级)

  • $ sudo vi /etc/group
  • 修改的线web:x:1001:web:x:1000:jackson

这使我的用户jackson属于该web组。

仅供参考,如果您不熟悉,vim我不建议您执行“高级”步骤,$ sudo nano /etc/group


高级免责声明中做得很好...如果不了解其中的含义,可能会导致某些不满和破裂。
dreftymac

vi直接使用相比,更好的选择是使用专用版本vigr。它会创建一个临时副本,并在保存之前检查语法,从而在进行编辑时显得更加安全。它可以在BSD和GNU / Linux中使用(来自util-linux软件包)。类似工具,为其他重要文件,如存在vipwvisudo
安东尼G-莫妮卡的正义
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.