发新话题
打印

[求助] 在AIX上创建VOB遇到得问题:getgroups failed( 此文章被查看:1817次,被回复:9篇!! )

在AIX上创建VOB遇到得问题:getgroups failed

第一次用root用户来建立VOB得时候,没有出什么错误,但是因为客户得系统设置了只有ccadm这个用户才可以mount vob,所以第二次改用ccadm这个用户来操作,可这次再建得时候,出了以下错误:
cleartool mkvob  -tag /vobs/QN_PVOB -ucmproject -c "QingNiao PVOB" /vobdata/ccstg/VOBs/QN_PVOB.vbs
cleartool: Error: getgroups failed: A system call received a parameter that is not valid.
cleartool: Error: Operation "credutl_get_sid_credentials" failed: A system call received a parameter that is not valid..
cleartool: Error: Unable to create versioned object base "/vobdata/ccstg/VOBs/QN_PVOB.vbs".

大家看看是怎么回事?



© 本文为 懂你SCMLife 共同所有,未经同意,请勿转载 ©如该文侵犯了您的版权,请联系管理员
优惠购买Rational,Telelogic,Hansky产品,企业VIP服务、实施
VIP服务电话:13581809377

TOP

可能是ccadm的组设置不对,看一下ccadm属于那些组

getgroups通常会调用两次,第一次得到用户组的数量,并将其作为参数再次传给getgroups

如果第一次调用失败返回了-1,那么第二次调用自然就“received a parameter that is not valid”了

以上内容纯属猜测……



© 本文为 zixiu2008SCMLife 共同所有,未经同意,请勿转载 ©如该文侵犯了您的版权,请联系管理员

TOP

楼上得猜测很有道理,偶现在也在查用户组得问题,这个ccadm得用户一共属于32个组,大大超过了UNIX 16个组得限制。
但不知道怎样来做才能将这个错误给解决?



© 本文为 懂你SCMLife 共同所有,未经同意,请勿转载 ©如该文侵犯了您的版权,请联系管理员
优惠购买Rational,Telelogic,Hansky产品,企业VIP服务、实施
VIP服务电话:13581809377

TOP

用户属组超过32个时的局限性
  如果用户属组超过32个,只有前面的32个(按照linux或者unix上面的GID或者windows上面的SID数排列)对cc有效。但是如果环境变量存在其他用户,列表中的组名将被cc优先考虑。


应该是32个

© 本文为 yunyun123 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

yunyun123说得这些恰是管理员手册上说的,我已经找到,下一步试试设环境变量看看。

大家还有什么别的好主意?提出来,我试试。

© 本文为 懂你 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
优惠购买Rational,Telelogic,Hansky产品,企业VIP服务、实施
VIP服务电话:13581809377

TOP

我正好翻译这个地方,呵呵

© 本文为 yunyun123 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

继续猜测……

也许ClearCase在AIX上的实现直接将16传给了getgroups作为第一个参数

但是16却小于ccadm实际的用户组数量(32),所以调用出错

Linux上通过改变NGROUPS_MAX的值然后重新编译应该就可以去掉这种限制

没接触过AIX,不清楚有什么办法可以做到这一点

如果是用NIS来统一管理的用户以及用户组,可能是NIS Master的系统支持32个用户组

© 本文为 zixiu2008 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

就像楼上所说的一样,其实对方就是用的NIS来管理用户的。
我今天去尝试着首先设置环境变量:CLEARCASE_GROUPS,希望能解决这个问题,可结果依旧,出现的错误信息依然和原来相同,大家看看除了用户组的限制以外,还有可能是其它的原因吗?

© 本文为 懂你 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
优惠购买Rational,Telelogic,Hansky产品,企业VIP服务、实施
VIP服务电话:13581809377

TOP

看错误信息应该就是用户组的限制问题

环境变量通常有一个NGROUPS_MAX的值

Linux上从2.0内核开始就是32了,2.6的应该是65536

UNIX默认都是16,不同的系统有不同的修改方法

但是修改后对NIS,NFS,Samba都会有一些影响

© 本文为 zixiu2008 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员

TOP

感谢各位的热心解答!

我们对问题的定位的确很准确。只要把ccadm的用户组缩减到16个以内,再建的时候错误就消失了。
这个是AIX系统的设置,需要将用户所属的组尽量控制在16个以内。

© 本文为 懂你 所有,未经同意,请勿转载
©如该文侵犯了您的版权,请联系管理员
优惠购买Rational,Telelogic,Hansky产品,企业VIP服务、实施
VIP服务电话:13581809377

TOP

发新话题