0
votes

Comment forcer une sieable à utiliser sudo pour installer des packages?

J'ai un jeu de jeu que d'exécuter des rôles et vous connecte le serveur avec un utilisateur qui a les privilèges sudo. Le problème est que, lors de la commutation de cet utilisateur, j'ai toujours besoin d'utiliser sudo code> à, dites, d'installer des paquets.

IE: p>

- name: Install Memcached
  yum:
    name: memcached.x86_64
    state: present


3 Réponses :


-4
votes

Utiliser le module Shell au lieu de miam.

- Nom: Installer Memcached Shell: sudo yum install -y {{your_package_here}}

pas aussi cool que d'utiliser un module, mais cela fera le travail.

Votre device_user est ok. Si vous ne l'utilisez pas, vous allez finir par essayer d'exécuter les commandes dans le jeu de jeu, à l'aide de l'utilisateur utilisé pour stabilish la connexion SSH (ANSIBLE_USER ou REMOTE_USER ou l'utilisateur utilisé pour exécuter le jeu de jeu).


3 commentaires

Pourquoi utiliseriez-vous "sudo" si une offre ansible "devient" et peut choisir parmi les différentes méthodes disponibles? En fait, il faut émettre un avertissement si vous faites cela.


Pour ce que j'ai compris, il utilise déjà devenu devenu, mais l'utilisateur qu'il devient, doit encore utiliser "sudo". Donc, la seule façon que je puisse imaginer était de continuer à utiliser le devenir qu'il utilise déjà, et sur le dessus de celui-ci avec module Shell. AVERTISSEMENT N'EST PAS UN PROBLÈME, vous pouvez toujours le désactiver avec des arguments dans la tâche ou la directive dans AnsIBL.CFG. Peut-être que je suis mis dans quelle op demande?


L'utilisation du module droit n'est pas d'être cool; Il s'agit d'utiliser l'outil correctement. Si vous venez de déposer la coquille à chaque fois, il y a peu de point à l'aide de la première place, par opposition à l'utilisation de votre propre script shell. Si le device_user a besoin de sudo, le device_user doit être réglé sur la racine ou un utilisateur qui n'a pas à SUDO.



0
votes

Vous pouvez spécifier devenir: oui quelques endroits. Souvent, il est utilisé au niveau de la tâche, parfois il est utilisé comme paramètre de ligne de commande (Prassome, -B exploiter des opérations d'exécution). Il peut également être défini au niveau de la lecture: xxx

Vous pouvez également l'activer dans group_vars:

group_vars / exmaple.yml xxx < / Pré>

Pour votre exemple, utilisez-le pour l'installation de logiciel, je l'installerais au niveau de la tâche. Je pense que dans votre cas, l'importation est le problème. Vous devez la définir dans le fichier que vous importaez.


0 commentaires

0
votes

J'ai fini par la spécification de l'esprit de devenir root pour certaines des tâches qui échouaient (mon exemple n'était pas le seul à défailler, et ça a bien fonctionné. La modification de mon environnement est que je ne peux pas me connecter en tant que root, Mais je peux "devenir" racine une fois connecté comme quelqu'un d'autre.

Voici comment mes tâches ressemblent maintenant: P>

- name: Install Memcached
  yum:
    name: memcached.x86_64
    state: present
  become_user: root


0 commentaires