我尝试使用以下剧本将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\
没有错误,但是我无法获得复制的文件!这真的让我分心了!
答案 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
这一行正在检查您的客户端计算机上的文件。