如何在chef用户资源中创建具有多个组成员的用户

时间:2015-06-19 15:07:01

标签: resources chef recipe

在创建用户时,我们可以在他所属的gid中指定组,如果该用户属于多个组,我们如何在chef中指定

user 'random' do
  supports :manage_home => true
  comment 'Random User'
  uid 1234
  gid 'users'
end

如果用户资源未提供此选项,我们如何才能以最佳方式实现。

1 个答案:

答案 0 :(得分:4)

实际上,这不是一个拥有多个群组的用户,而是一个拥有多个用户的群组(在/etc/groups中管理的用户不在/etc/passwd中)。

实现这一目标的方法是:

user 'random' do
  supports :manage_home => true
  comment 'Random User'
  uid 1234
  gid 'users'
end

%w{group1 group2 group2}.each do |g|
  group g do
    action :modify
    members "random"
    append true
  end
end

有关详细信息和可用属性,请参阅group资源documentation

如果该组尚不存在,请将操作更改为:create