die Ausführung eines Befehls durch den Wechsel zum root-Benutzer in ansible

Arbeite ich an Ansible playbook ausführen einige meiner Aufgaben. In einer meiner Aufgaben, die ich wechseln müssen, um bestimmten Verzeichnis, und führen Sie dann einen Befehl mit sudo, aber ich brauche all diese Dinge zu tun durch den Wechsel zum root-Benutzer zuerst, sonst funktioniert es nicht. So im Allgemeinen das ist, was ich tun, ohne ansible:

david@machineA:/tmp/parallel-20140422$ sudo su
root@machineA:/tmp/parallel-20140422# sudo ./configure && make && make install

Nachdem Sie die obigen Schritte, ich sehe GNU parallel library in meinem system installiert ist korrekt. Aber mit diesen Schritten, mit Ansible, ich sehe nicht, mein GNU library installiert bekommen auf alle.

- name: install gnu parallel
  command: chdir=/tmp/parallel-20140422 sudo ./configure && make && make install

Nun meine Frage wie wechsle ich zu root-Benutzer und einen bestimmten Befehl auszuführen. Ich bin mit Ansible 1.5.4 und sieht aus wie ich nicht aktualisieren. Ich habe sogar versucht mit unter, aber es immer noch nicht funktioniert:

- name: install gnu parallel
  command: chdir=/tmp/parallel-20140422 sudo ./configure && make && make install
  sudo: true
  sudo_user: root

Ich bin mit meinem playbook mit nachstehenden Befehl:

ansible-playbook -e 'host_key_checking=False' setup.yml -u david --ask-pass --sudo -U root --ask-sudo-pass
Ich bin mir nicht sicher über 1.5.4 aber in Ansible 2.x, die Sie verwenden sollten shell Modul statt command wenn Sie möchten, um die Ausführung von beliebigen shell-expression. Und warum verwenden sudo unter root Konto, Sie haben bereits die maximale Privilegien?
ja stimmt auf die Verwendung von sudo, wenn ich bin bereits umgestiegen auf root. Ändern kann ich das Teil nicht verwende sudo nicht mehr ob ich schon haben, wechseln Sie zum root-Benutzer.
Ich weiß, Befehl-Modul ist in Ordnung, bcoz ich überprüft, die für andere Aufgaben und Sie funktionieren.. Irgendwie ist das Thema für diese Aufgabe habe ich wechseln müssen, um root-Benutzer und dann nur ausführen dieses Befehls. Und ich bin mir nicht sicher wie ich es machen kann, mit ansible.

InformationsquelleAutor john | 2017-06-01

Schreibe einen Kommentar