使用CHEF“组”资源时出错

时间:2013-09-25 19:27:43

标签: chef chef-recipe

您好我使用以下代码创建一个组,我希望厨师使用“Chef :: Provider :: Group :: Groupadd”提供程序,我在Red Hat Enterprise Linux Server 6.4版上执行此操作。

主厨客户端版本11.4.0

用于创建组

的Chef recipie
group node['was']['usr_grp'] do
   action :create
end

ERROR

================================================================================
Error executing action `create` on resource 'group[webspher]'
================================================================================


Chef::Exceptions::Exec
----------------------
groupmod webspher returned 6, expected 0


Resource Declaration:
---------------------
# In /var/chef/cache/cookbooks/WAS/recipes/default.rb

 35: group node['was']['usr_grp'] do
 36:   action :create
 37: end
 38:



Compiled Resource:
------------------
# Declared in /var/chef/cache/cookbooks/WAS/recipes/default.rb:35:in `from_file'

group("webspher") do
  action [:create]
  retries 0
  retry_delay 2
  group_name "webspher"
  gid 901
  cookbook_name "WAS"
  recipe_name "default"
end



[2013-09-25T13:36:45-05:00] INFO: Running queued delayed notifications before re-raising exception
[2013-09-25T13:36:45-05:00] ERROR: Running exception handlers
[2013-09-25T13:36:45-05:00] FATAL: Saving node information to /var/chef/cache/failed-run-data.json
[2013-09-25T13:36:45-05:00] ERROR: Exception handlers complete
Chef Client failed. 0 resources updated
[2013-09-25T13:36:45-05:00] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out
[2013-09-25T13:36:45-05:00] FATAL: Chef::Exceptions::Exec: group[webspher] (WAS::default line 35) had an error: Chef::Exceptions::Exec: groupmod webspher returned 6, expected 0

2 个答案:

答案 0 :(得分:2)

通常调试组资源的方法是运行gthe groupadd命令并观察结果。

在你的情况下

groupadd -g 901 webspher

它可能会解释你的厨师运行失败的原因。

最有可能的原因是你的小组已经存在或gid已经被占用。 您可以使用

进行检查
grep 901 /etc/groups

grep webspher /etc/groups 

答案 1 :(得分:1)

感谢Kamararadclimber,因为您还提到退出代码6意味着群组不存在,所以理想情况下它应该创建群组。

我发现的问题是我们环境的本地问题。我们将活动目录与我们的系统绑定,以便在Active Directory中创建组和用户并映射到计算机。

不知何故,我试图创建的用户是在活动目录中但没有正确映射,即它不存在于/ etc / groups中。

厨师以某种方式能够发现该组存在,不确定它是如何在活动目录中实际计算出来的,但它确实是错误的。

groupadd工作正常,因为它只是在本地创建了组,并没有在活动目录中的任何位置进行检查。

感谢所有支持