ansible win_copy无法正常工作“错误:src文件不存在”

时间:2018-07-13 03:57:58

标签: ansible

我尝试使用以下剧本将mp3文件复制到D:\

- name: copy file
  hosts: windows
  - name: copy file to D:
    win_copy:
      src: X:\assets\audio.mp3
      dest: D:\template\
      remote_src: yes

但是我收到以下错误消息:

TASK [Gathering Facts]**********************************************
ok: [111.111.23.40]

TASK [copy file to D:] ********************************
fatal: [111.231.76.40]: FAILED! => {"changed": false, "dest": 
"D:\\template\\", "msg": "Cannot copy src file: 'X:\\assets\\audio.mp3' 
as it does not exist", "src": "X:\\assets\\audio.mp3"}

我确定文件X:\\assets\\audio.mp3存在,并且X:\是Linux控制计算机的共享文件。

you can see the src file in this directory structor 当我上传Windows机器并运行

copy X:\assets\audio.mp3 D:\template\

在cmd.exe中,可以成功复制audio.mp3!我还尝试在Windows计算机上复制另一个文件,例如:

- name: copy file
  hosts: windows
  - name: copy template to D:
    win_copy:
      src: D:\document\test.txt
      dest: D:\template\
      remote_src: yes

此任务可以成功运行!

我尝试了其他方法,例如

- name: copy file
  hosts: windows
  - name: copy template to D:
    win_command: cmd.exe /k copy X:\assets\audio.mp3 D:\template\

没有错误,但是我无法获得复制的文件!这真的让我分心了!

2 个答案:

答案 0 :(得分:0)

要么创建执行映射和复制的powershell脚本。然后使用ansible通过powershell脚本执行任务。

另一种方式(这里假设源服务器和目标服务器都在同一域中)

     - name: copy files
       win_copy:
          src: \\domain_server\c$\somefile.txt
          dest: c:\Dir\somefile.txt
          remote_src: true

`

答案 1 :(得分:0)

删除

remote_src: true

这一行正在检查您的客户端计算机上的文件。