Puncte:0

Nu se poate executa instrucțiunea sqlite cu modulul de comandă Ansible - [Errno 2] Nu există un astfel de fișier sau director: b'sqlite3'"

drapel jp

Încerc să rulez o interogare simplă pe multe servere. Știu 100% că fișierul și directorul în cauză există.

Pot face comenzi simple, cum ar fi ls, pwd, cine sunt, etc, și pot rula sqlite comanda pe gazda la distanță în sine.

Sarcina din cartea de joc:

- nume: Efectuați o instrucțiune SELECT de testare
  deveni: da
  devenit_utilizator: root
  comandă: sqlite3 /usr/local/share/sqlite/dbfile.sqlite3 "SELECT * FROM db WHERE hostname="{{ db_server_prompt }}""
  înregistrare: query_result

- depanare: var=query_result.stdout_lines

Eroarea pe care o primesc este "msg": "[Errno 2] Nu există un astfel de fișier sau director: b'sqlite3'",.

Este ceva în neregulă cu sintaxa mea? De ce îmi spune că există"Nu există un astfel de fișier sau director" când folosesc comanda sqlite3? Am încercat calea absolută către executabil (/usr/bin/sqlite3), dar primesc aceeași eroare.

Actualizați Am încercat să folosesc chdir ca argument per acest raspuns, dar înțeleg Nu se poate schimba directorul înainte de execuție. Am încercat și calea absolută către sqlite cu /usr/bin/sqlite3. Niciunul dintre aceste lucruri nu funcționează.

Puncte:0
drapel ca

S-ar putea să aruncați o privire Care este diferența dintre ansible brut, coajă și comanda? și încercați următoarele

- nume: Efectuați o instrucțiune SELECT de testare
  deveni: da
  devenit_utilizator: root
  coajă:
    cmd: /usr/bin/sqlite3 /usr/local/share/sqlite/dbfile.sqlite3 „SELECT * FROM db WHERE hostname={{ db_server_prompt }}”
  înregistrare: query_result

- nume: Afișează rezultatul interogării
  depanare: 
    var: query_result.stdout_lines
DevOpsSauce avatar
drapel jp
Nu m-aș fi gândit niciodată să pun `cmd` cu modulul `shell`. După ce am adăugat câteva ghilimele duble în jurul `SELECT` și ghilimele simple în jurul variabilei `db_server_prompt`, a funcționat! Voi accepta răspunsul tău.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.