Điểm:0

Không thể thực thi câu lệnh sqlite với mô-đun lệnh Ansible - [Errno 2] Không có tệp hoặc thư mục như vậy: b'sqlite3'"

lá cờ jp

Tôi đang cố chạy một truy vấn đơn giản trên nhiều máy chủ. Tôi biết 100% rằng tệp và thư mục được đề cập tồn tại.

Tôi có thể thực hiện các lệnh đơn giản, chẳng hạn như ls, pwd, tôi là ai, v.v. và tôi có thể chạy sqlite lệnh trên chính máy chủ từ xa.

Nhiệm vụ vở kịch:

- name: Thực hiện một câu lệnh SELECT kiểm tra
  trở thành: có
  trở thành_user: root
  lệnh: sqlite3 /usr/local/share/sqlite/dbfile.sqlite3 "CHỌN * TỪ db WHERE tên máy chủ = "{{ db_server_prompt }}""
  đăng ký: query_result

- gỡ lỗi: var=query_result.stdout_lines

Lỗi tôi nhận được là "msg": "[Errno 2] Không có tệp hoặc thư mục như vậy: b'sqlite3'",.

Có điều gì sai với cú pháp của tôi? Tại sao nó nói với tôi rằng có "Không có tập tin hoặc thư mục" khi sử dụng lệnh sqlite3? Tôi đã thử đường dẫn tuyệt đối đến tệp thực thi (/usr/bin/sqlite3), nhưng tôi gặp lỗi tương tự.

Cập nhật tôi đã cố gắng sử dụng chdir như một đối số cho mỗi câu trả lời này, nhưng tôi nhận được Không thể thay đổi thư mục trước khi thực hiện. Tôi cũng đã thử đường dẫn tuyệt đối đến sqlite với /usr/bin/sqlite3. Không có thứ nào trong số này đang hoạt động.

Điểm:0
lá cờ ca

bạn có thể có một cái nhìn vào sự khác biệt giữa ansible là gì thô, vỏ bọcchỉ huy? và thử như sau

- name: Thực hiện một câu lệnh SELECT kiểm tra
  trở thành: vâng
  trở thành_user: root
  vỏ bọc:
    cmd: /usr/bin/sqlite3 /usr/local/share/sqlite/dbfile.sqlite3 "CHỌN * TỪ db WHERE tên máy chủ ={{ db_server_prompt }}"
  đăng ký: query_result

- name: Hiển thị kết quả truy vấn
  gỡ lỗi: 
    var: query_result.stdout_lines
DevOpsSauce avatar
lá cờ jp
Tôi chưa bao giờ nghĩ sẽ đặt `cmd` với mô-đun `shell`. Sau khi thêm một số dấu ngoặc kép xung quanh `SELECT` và dấu ngoặc đơn xung quanh biến `db_server_prompt`, nó đã hoạt động! Tôi sẽ chấp nhận câu trả lời của bạn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.