2013-09-25 2 views
0

Salut J'utilise le code ci-dessous pour créer un groupe, je voudrais que le chef utilise le fournisseur "Chef :: Provider :: Group :: Groupadd", je l'exécute sur Red Hat Version Enterprise Linux Server 6.4.Erreur lors de l'utilisation de la ressource "groupe" CHEF

chef cuisinier version client 11.4.0

Chef de recipie utilisé pour créer le groupe

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

erreur

================================================================================ 
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 
+0

Avez-vous trouvé une solution à ce problème? C'est correct de répondre à votre propre question. S'il vous plaît ne pas oublier de marquer une réponse comme correcte! :) – sethvargo

Répondre

1

Merci Kamararadclimber, comme vous l'avez mentionné le code de sortie 6 signifie groupe n'existe pas, donc, idéalement, il devrait créer le groupe.

Le problème que j'ai trouvé était local à notre environnement. Nous avons un répertoire actif lié à nos systèmes afin que le groupe et les utilisateurs soient créés dans Active Directory et mappés aux machines.

D'une façon ou d'une autre, l'utilisateur que j'essayais de créer se trouvait dans le répertoire actif mais n'était pas mappé correctement, c'est-à-dire qu'il n'était pas présent dans/etc/groups.

Chef était en quelque sorte en mesure de découvrir que le groupe existait, pas sûr de la façon dont il figurait dans le répertoire actif, mais il était et donc donner l'erreur. Groupadd a bien fonctionné car il vient de créer le groupe localement et ne vérifiait nulle part dans le répertoire actif.

Merci pour tout le soutien

2

Habituellement, la façon de débogage des ressources du groupe est d'exécuter gle commande groupadd et Observez le résultat.

Dans votre situation

groupadd -g 901 webspher 

il vous expliquera sans doute la raison pour laquelle votre course de chef échoue. Ceci est probablement dû au fait que votre groupe existe déjà ou que le groupe est déjà pris. Vous pouvez vérifier avec

grep 901 /etc/groups 

et

grep webspher /etc/groups 
+0

Exécuté cette commande 'groupadd -g 901 webspher' Aucun groupe avec GID 901 n'a été créé. Mais aucune erreur n'a été détectée et la même erreur est survenue avec la ressource USER. Plus que cela, pourquoi le "groupmod" est appelé. Est-il possible d'appeler directement le fournisseur Groupadd. – Saurav

+0

man groupadd indique que le code de sortie 6 signifie "le groupe spécifié n'existe pas" – kamaradclimber

Questions connexes