Ansible 找不到下载的文件



我对Ansible很陌生,并试图自动化安装TeamSpeak 3服务器的工作。可悲的是,我遇到了一些错误:

  • 如果我尝试使用 ansible-playbook 命令运行它,它会要求输入 sudo 密码,即使我明确说明了清单中的become_pass
  • 如果我使用 --ask-become-pass 参数重试它,它会运行前两个步骤并指出它找不到下载的文件,在连接到服务器时,我可以确保它存在

这是权限错误吗?或者我无法访问主目录,因为我还没有存储 ssh 密钥?

这是剧本(目前(:

---
- hosts: all
  gather_facts: false
  become: yes
  tasks:
    - name: Adding TeamSpeak User
      user:
        name: ts3
    - name: Download TeamSpeak
      get_url:
        url: https://files.teamspeak-services.com/releases/server/3.9.1/teamspeak3-server_linux_amd64-3.9.1.tar.bz2
        dest: /home/ts3/
    - name: Extract downloaded folder
      unarchive:
        src: /home/ts3/teamspeak3-server_linux_amd64-3.9.1.tar.bz2
        dest: /home/ts3
缺少

remote_src

- name: Unarchive a file that is already on the remote machine
  unarchive:
    src: /tmp/foo.zip
    dest: /usr/local/bin
    remote_src: yes

您可以将这两个任务合并为单个任务,方法是将 src 替换为如下所示的 URL

- name: Unarchive a file that needs to be downloaded (added in 2.0)
  unarchive:
    src: https://example.com/example.zip
    dest: /usr/local/bin
    remote_src: yes

最新更新