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

SAS*_*ASI 1 resources recipe chef-infra

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

user 'random' do
  supports :manage_home => true
  comment 'Random User'
  uid 1234
  gid 'users'
end
Run Code Online (Sandbox Code Playgroud)

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

Ten*_*bai 7

实际上,这不是具有多个组的用户,而是具有多个用户的组(在/etc/groupsnot in 中进行管理/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
Run Code Online (Sandbox Code Playgroud)

有关更多详细信息和可用属性,请参阅group资源文档

:create如果组不存在,则将操作更改为。