当前位置: 首页 > news >正文

Ansible模块——通过 URL 下载文件

通过 URL 下载文件

ansible.builtin.get_url 可以通过 URL 下载文件。

选项名

类型

默认值

描述

attributesstrnull

设置文件系统对象的属性,格式参考 lsattr;支持 +-= 操作符。别名:attr

backupboolfalse

创建目标文件的备份副本(带时间戳)。

checksumstr''

提供格式为 <算法>:<值> 的校验和,如 sha256:abcd1234...,用于校验完整性并决定是否跳过下载。

cipherslistnull

指定 SSL/TLS 加密套件,多个套件以 : 连接。

client_certpathnull

PEM 格式的客户端证书,可包含私钥。

client_keypathnull

客户端私钥 PEM 文件;若 client_cert 已包含,则可省略。

decompressbooltrue

自动解压 gzip 编码响应内容。

destpath

下载文件保存的目标路径(必须)。若为目录,会使用服务器提供的文件名。

forceboolfalse

是否强制下载(即使目标文件存在)。只在 dest 是文件时有效。

force_basic_authboolfalse

是否强制初次请求就发送 Basic Auth 头信息(用于兼容不返回 401 的服务)。

groupstrnull

目标文件所属的组名。默认继承当前用户组。

headersdictnull

自定义 HTTP 请求头,格式为字典。

http_agentstransible-httpget

请求时发送的 User-Agent 标识。

moderawnull

文件权限,如 0644u=rw,g=r,o=r。建议使用字符串格式以避免意外。

ownerstrnull

目标文件所属用户名。默认为当前用户。

selevelstrnull

SELinux 上下文的 level 部分。

serolestrnull

SELinux 上下文的 role 部分。

setypestrnull

SELinux 上下文的 type 部分。

seuserstrnull

SELinux 上下文的 user 部分。

timeoutint10

URL 请求超时时间(秒)。

tmp_destpathnull

下载临时文件的目录,默认 ~/.ansible/tmp/,可以通过 remote_tmp 在配置文件设置默认位置。

unredirected_headerslist[]

不跟随重定向的 HTTP 头名称列表,适用于防止认证信息泄露。

unsafe_writesboolfalse

是否允许非原子写操作(如 Docker 下)。有数据一致性风险。

urlstr

下载的 URL,支持 httphttps 和 ftp

url_passwordstrnull

HTTP 基本认证密码。别名:password

url_usernamestrnull

HTTP 基本认证用户名。别名:username

use_gssapiboolfalse

是否使用 GSSAPI(Kerberos)进行认证。需要安装 gssapi Python 库。

use_netrcbooltrue

是否使用 ~/.netrc 中的凭据。

use_proxybooltrue

是否使用环境变量中的代理配置。

validate_certsbooltrue

是否校验 HTTPS 证书,设为 false 可跳过验证(如自签名证书)。

常用选项:

选项名

类型

默认值

描述

backupboolfalse

创建目标文件的备份副本(带时间戳)。

checksumstr''

提供格式为 <算法>:<值> 的校验和,如 sha256:abcd1234...,用于校验完整性并决定是否跳过下载。

destpath

下载文件保存的目标路径(必须)。若为目录,会使用服务器提供的文件名。

forceboolfalse

是否强制下载(即使目标文件存在)。只在 dest 是文件时有效。

force_basic_authboolfalse

是否强制初次请求就发送 Basic Auth 头信息(用于兼容不返回 401 的服务)。

groupstrnull

目标文件所属的组名。默认继承当前用户组。

headersdictnull

自定义 HTTP 请求头,格式为字典。

http_agentstransible-httpget

请求时发送的 User-Agent 标识。

moderawnull

文件权限,如 0644u=rw,g=r,o=r。建议使用字符串格式以避免意外。

ownerstrnull

目标文件所属用户名。默认为当前用户。

timeoutint10

URL 请求超时时间(秒)。

unredirected_headerslist[]

不跟随重定向的 HTTP 头名称列表,适用于防止认证信息泄露。

urlstr

下载的 URL,支持 httphttps 和 ftp

url_passwordstrnull

HTTP 基本认证密码。别名:password

url_usernamestrnull

HTTP 基本认证用户名。别名:username

use_proxybooltrue

是否使用环境变量中的代理配置。

validate_certsbooltrue

是否校验 HTTPS 证书,设为 false 可跳过验证(如自签名证书)。

- name: Download foo.confansible.builtin.get_url:url: http://example.com/path/file.confdest: /etc/foo.confmode: '0440'- name: Download file and force basic authansible.builtin.get_url:url: http://example.com/path/file.confdest: /etc/foo.confforce_basic_auth: yes- name: Download file with custom HTTP headersansible.builtin.get_url:url: http://example.com/path/file.confdest: /etc/foo.confheaders:key1: onekey2: two- name: Download file with check (sha256)ansible.builtin.get_url:url: http://example.com/path/file.confdest: /etc/foo.confchecksum: sha256:b5bb9d8014a0f9b1d61e21e796d78dccdf1352f23cd32812f4850b878ae4944c- name: Download file with check (md5)ansible.builtin.get_url:url: http://example.com/path/file.confdest: /etc/foo.confchecksum: md5:66dffb5228a211e61d6d7ef4a86f5758- name: Download file with checksum url (sha256)ansible.builtin.get_url:url: http://example.com/path/file.confdest: /etc/foo.confchecksum: sha256:http://example.com/path/sha256sum.txt- name: Download file from a file pathansible.builtin.get_url:url: file:///tmp/afile.txtdest: /tmp/afilecopy.txt- name: < Fetch file that requires authentication.username/password only available since 2.8, in older versions you need to use url_username/url_passwordansible.builtin.get_url:url: http://example.com/path/file.confdest: /etc/foo.confusername: barpassword: '{{ mysecret }}'

相关文章:

  • HTTP/HTTPS与SOCKS5协议在隧道代理中的兼容性设计解析
  • django回忆录(Python的一些基本概念, pycharm和Anaconda的配置, 以及配合MySQL实现基础功能, 适合初学者了解)
  • 人工智能+:职业技能培训的元命题与能力重构
  • HarmonyOS NEXT~鸿蒙系统与Uniapp跨平台开发实践指南
  • 从混乱到高效:我们是如何重构 iOS 上架流程的(含 Appuploader实践)
  • 自动化测试脚本点击运行后,打开Chrome很久??
  • ArcGIS操作16:添加经纬网
  • 创建一个使用 GPT-4o 和 SERP 数据的 RAG 聊天机器人
  • DeepSeek-V3 vs GPT-4:技术对比与性能评测
  • 从零开始创建React项目及制作页面
  • Linux跨网络通信中IP与MAC的作用
  • [Git] 初识 Git 与安装入门
  • 21. 自动化测试框架开发之Excel配置文件的测试用例改造
  • Python、Pytorch、TensorFlow、Anconda、PySide、Jupyter
  • 能碳一体化的核心功能模块
  • React Flow 数据持久化:Django 后端存储与加载的最佳实践(含详细代码解析)
  • [SpringBoot]Spring MVC(6.0)----图书管理系统(初)
  • vue3前端后端地址可配置方案
  • 程序设计实践--排序(1)
  • AI无法解决的Bug系列(一)跨时区日期过滤问题
  • 中国需加强自主创新和国际合作,提升产业链供应链韧性
  • 扬子晚报原副总编辑俞适逝世,享年89岁
  • 设甜蜜打卡点、还能当婚车,上海定制公交车变身“幸福专列”
  • 钱进已任外交部新闻司副司长
  • 李根读《野兽之魂》|拨开高深的布幔,直窥历史的复杂
  • 王楚钦球拍检测环节受损,国际乒联发声明