【问题标题】:How to Create a User and Group in User Resource如何在用户资源中创建用户和组
【发布时间】:2023-12-29 09:14:01
【问题描述】:

我正在使用以下命令在我的 RHEL 机器上创建一个用户:

useradd -d <home_path> -m -s <shell_path> -U <name>

我希望在创建用户时创建组。重要的部分是 -U 标志。

如何在 Chef 中实现这一点?到目前为止我有

user 'name' do
  comment 'comment'
  shell '<shell_path>'
  home '<home_path>'
  manage_home true
  action :create
end

我知道我可以使用组资源创建一个组,但这会创建一个具有单独 ID 的组。有没有办法在用户资源中实现 -U 标志?

【问题讨论】:

    标签: chef-infra cookbook


    【解决方案1】:

    不,没有任何默认方法。如果此功能对您来说非常重要,您可以使用自定义资源提供程序来实现此功能。

    正如您提到的group 资源,Chef 中的典型方法是首先创建您的group 资源,然后为其分配一个特定的gid。然后创建您的user 资源,并为user 提供与groupgid 匹配的uidgid 属性。这会为您提供与 groupid 匹配的用户 ID。

    例如:

    group 'name_group' do
      gid '2000'
      action :create
    end
    
    user 'name_user' do
      uid '2000'
      gid '2000'
      action :create
    end
    

    参考:

    【讨论】:

      最近更新 更多