4

我正在尝试使用带有厨师服务器的“通用用户”配方将“部署”用户添加到我的 web_app 角色。我创建了一个 deploy.json 数据包,其中包含:

{
  "id": "deploy",
  "group": "deploy",
  "shell": true
}

我已将数据包上传到我的服务器。

我还上传了我所有的食谱和角色。

最后,这是我的应用角色:

name "app_server"
description "application"
run_list(
  "recipe[generic-users]",
)
default_attributes "users" => { "active_groups" => "deploy" }

当我尝试使用此角色配置我的服务器时,我看到以下内容:

[2012-09-24T22:17:53+01:00] INFO: Active groups: deploy, sysadmin

但它实际上并没有创建我的部署用户。

我需要做什么才能让它创建我的用户?

另外,我想指定不同的用户,并且只能根据需要在特定角色上创建特定帐户。我怎么能那样做?

4

2 回答 2

7

您是否查看过User ResourceGroup Resource

您可以以声明方式创建组和用户:

group "magrathean" do
  gid 42
end

user "slartibartfast" do
  home "/home/slartibartfast"
  gid 42
  shell "/bin/bash"
  password "hashed password" 
end

查看有关散列密码的部分。

我们运行一个自定义用户手册,它允许我们设置特定的配置文件,如.alias.bashrc等。

于 2012-09-25T06:01:53.360 回答
0

您可能会想到由 Chef(前身为 Opscode)维护的“用户”食谱,它按照您所说的做。给定一个数据包“用户”和项目“部署”(使用您声明的 json),它将创建用户。它还可以删除用户,或从 Tilman 提到的“用户”资源中调用任何操作。 https://github.com/opscode-cookbooks/users

于 2014-01-25T14:18:17.017 回答