你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
AzCopy 是一个命令行实用工具,可用于向/从存储帐户复制 Blob 或文件。 本文包含可用于配置 AzCopy v10 的环境变量列表。
注释
如果要查找内容以帮助开始使用 AzCopy,请参阅 AzCopy 入门。
AzCopy v10 环境变量
下表描述了每个环境变量,并提供可帮助你使用该变量的内容的链接。
| 环境变量 | Description |
|---|---|
| AWS_ACCESS_KEY_ID | Amazon Web Services 访问密钥。 提供使用 Amazon Web Services 授权的密钥。使用 AzCopy 将数据从 Amazon S3 复制到 Azure 存储 |
| AWS_SECRET_ACCESS_KEY | Amazon Web Services 机密访问密钥提供用于授权 Amazon Web Services 的密钥。 使用 AzCopy 将数据从 Amazon S3 复制到 Azure 存储 |
| AZCOPY_ACTIVE_DIRECTORY_ENDPOINT | 要使用的Microsoft Entra 终结点。 此变量仅用于自动登录,请在调用登录命令时改用命令行标志。 |
| AZCOPY_AUTO_LOGIN_TYPE | 将此变量设置为 DEVICE、MSI、 SPNAZCLI和 PSCRED。 此变量提供在不使用命令的情况下 azcopy login 授权的功能。 请参阅 使用 AzCopy 和 Microsoft Entra ID 授予对 Blob 的访问权限。 |
| AZCOPY_BUFFER_GB | 指定下载和上传文件时希望 AzCopy 使用的最大系统内存量。 以 GB 为单位表示此值。 请参阅 “优化内存使用” |
| AZCOPY_CACHE_PROXY_LOOKUP | 默认情况下,Windows 上的 AzCopy 将在主机名级别缓存代理服务器查找(不考虑 URL 路径)。 设置为“true”以外的任何其他值以禁用缓存。 |
| AZCOPY_CONCURRENCY_VALUE | 指定可能发生的并发请求数。 可以使用此变量来提高吞吐量。 如果计算机少于 5 个 CPU,则将此变量的值设置为 32。 否则,默认值等于 16 乘以 CPU 数。 此变量的最大默认值为 3000,但可以手动设置此值的更高或更低。 请参阅 “提高并发性” |
| AZCOPY_CONCURRENT_FILES | 通过控制同时启动传输的文件数,覆盖任何一次正在进行的文件数(近似)。 |
| AZCOPY_CONCURRENT_SCAN | 控制扫描期间使用的(最大)并行度。 仅影响并行化枚举器,其中包括 Azure 文件/Blob 和本地文件系统。 |
| AZCOPY_CONTENT_TYPE_MAP | 替代作系统定义的一个或多个默认 MIME 类型映射。 将此变量设置为定义任何映射的 JSON 文件的路径。 下面是示例 JSON 文件的内容: { } “MIMETypeMapping”: { “.323”:“text/h323”, “.aaf”:“application/octet-stream”, “.aca”:“application/octet-stream”, “.accdb”:“application/msaccess” } } |
| AZCOPY_DEFAULT_SERVICE_API_VERSION | 重写服务 API 版本,以便 AzCopy 可以容纳 Azure Stack 等自定义环境。 |
| AZCOPY_DISABLE_HIERARCHICAL_SCAN | 仅适用于 Azure Blob 是源时。 并发扫描速度更快,但采用分层列表 API,这可能会导致更多的 IO/成本。 指定“true”以牺牲性能,但节省成本。 |
| AZCOPY_DISABLE_SYSLOG | 禁用 Syslog 或 Windows 事件日志中的日志记录。 默认情况下,AzCopy 会将日志发送到这些通道。 如果要减少 Syslog 或 Windows 事件日志中的干扰,可以将此变量设置为 true。 |
| AZCOPY_DOWNLOAD_TO_TEMP_PATH | 将 AzCopy 配置为在实际下载之前下载到临时路径。 允许的值为 true 或 false |
| AZCOPY_JOB_PLAN_LOCATION | 替代作业计划文件(用于进度跟踪和恢复)的存储位置,以避免填满磁盘。 |
| AZCOPY_LOG_LOCATION | 重写存储日志文件的位置,以避免填满磁盘。 |
| AZCOPY_MSI_CLIENT_ID | 用户分配的托管标识的客户端 ID。
AZCOPY_AUTO_LOGIN_TYPE在设置为 MSI.. 请参阅 使用用户分配的托管标识授权 |
| AZCOPY_MSI_OBJECT_ID | 用户分配的托管标识的对象 ID。
AZCOPY_AUTO_LOGIN_TYPE在设置为 MSI.. 请参阅 使用用户分配的托管标识授权 |
| AZCOPY_MSI_RESOURCE_STRING | 用户分配的托管标识的资源 ID。 请参阅 使用用户分配的托管标识授权 |
| AZCOPY_PACE_PAGE_BLOBS | 页 Blob 的吞吐量是否应自动调整以匹配服务限制? 默认值为 true。 设置为“false”以禁用 |
| AZCOPY_PARALLEL_STAT_FILES | 在扫描本地文件系统时,导致 AzCopy 在并行“线程”上查找文件属性。 线程是从AZCOPY_CONCURRENT_SCAN定义的池中绘制的。 将此项设置为 true 可能会提高 Linux 上的扫描性能。 在 Windows 上不需要或不建议这样做。 |
| AZCOPY_REQUEST_TRY_TIMEOUT | 设置 AzCopy 应在 AzCopy 超时之前尝试上传每个请求的文件的分钟数。 |
| AZCOPY_SHOW_PERF_STATES | 如果设置为任何内容,屏幕上的输出将按状态包含区块计数 |
| AZCOPY_SPA_APPLICATION_ID | 服务主体的应用注册的应用程序 ID。
AZCOPY_AUTO_LOGIN_TYPE在设置为 SPN.. 请参阅 使用客户端机密授权服务主体 |
| AZCOPY_SPA_CERT_PASSWORD | 证书的密码。
AZCOPY_AUTO_LOGIN_TYPE在设置为 SPN.. 请参阅 使用客户端机密授权服务主体 |
| AZCOPY_SPA_CERT_PATH | 证书文件的相对路径或完全限定路径。
AZCOPY_AUTO_LOGIN_TYPE在设置为 SPN.. 请参阅 使用客户端机密授权服务主体 |
| AZCOPY_SPA_CLIENT_SECRET | 客户端密码。
AZCOPY_AUTO_LOGIN_TYPE在设置为 SPN.. 请参阅 使用客户端机密授权服务主体 |
| AZCOPY_TENANT_ID | 要用于 OAuth 设备交互式登录的 Microsoft Entra 租户 ID。 此变量仅用于自动登录,请在调用登录命令时改用命令行标志。 |
| AZCOPY_TUNE_TO_CPU | 设置为 false 以防止 AzCopy 在自动调整其并发级别时考虑 CPU 使用率(例如,在基准命令中)。 |
| AZCOPY_USER_AGENT_PREFIX | 将前缀添加到默认的 AzCopy 用户代理,该代理用于遥测目的。 将自动插入空格。 |
| CPK_ENCRYPTION_KEY | Base64 编码的 AES-256 加密密钥值。 当使用客户提供的密钥加密和解密 Blob 存储作上的数据时,读取和写入请求都需要此变量。 可以通过设置 --cpk-by-value=true 标志来使用客户提供密钥。 |
| CPK_ENCRYPTION_KEY_SHA256 | 加密密钥的 Base64 编码 SHA256。 当使用客户提供的密钥加密和解密 Blob 存储作上的数据时,读取和写入请求都需要此变量。 可以通过设置 --cpk-by-value=true 标志来使用客户提供密钥。 |
| GOOGLE_APPLICATION_CREDENTIALS | 服务帐户密钥文件的绝对路径提供使用 Google 云存储进行授权的密钥。 使用 AzCopy 将数据从 Google Cloud Storage 复制到 Azure 存储(预览版) |
| GOOGLE_CLOUD_PROJECT | Google 云存储中服务级别遍历所需的项目 ID。 |
| HTTPS_PROXY | 配置 AzCopy 的代理设置。 将此变量设置为代理 IP 地址和代理端口号。 例如,xx.xxx.xx.xxx:xx。 如果在 Windows 上运行 AzCopy,AzCopy 会自动检测代理设置,因此无需在 Windows 中使用此设置。 如果选择在 Windows 中使用此设置,它将替代自动检测。 请参阅 “配置代理设置” |
配置代理设置
若要配置 AzCopy 的代理设置,请设置 HTTPS_PROXY 环境变量。 如果在 Windows 上运行 AzCopy,AzCopy 会自动检测代理设置,因此无需在 Windows 中使用此设置。 如果选择在 Windows 中使用此设置,它将替代自动检测。
| 操作系统 | Command |
|---|---|
| Windows操作系统 | 在命令提示符中使用: set HTTPS_PROXY=<proxy IP>:<proxy port>在 PowerShell 中使用: $env:HTTPS_PROXY="<proxy IP>:<proxy port>" |
| Linux | export HTTPS_PROXY=<proxy IP>:<proxy port> |
| macOS | export HTTPS_PROXY=<proxy IP>:<proxy port> |
目前,AzCopy 不支持使用 NTLM 或 Kerberos 进行身份验证的代理。
绕过代理
如果在 Windows 上运行 AzCopy,并且希望告知它 根本不使用代理 (而不是自动检测设置),请使用这些命令。 使用这些设置,AzCopy 不会查找或尝试使用任何代理。
| 操作系统 | 环境 | 指令 |
|---|---|---|
| Windows操作系统 | 命令提示符 (CMD) | set HTTPS_PROXY=dummy.invalid set NO_PROXY=* |
| Windows操作系统 | PowerShell | $env:HTTPS_PROXY="dummy.invalid" $env:NO_PROXY="*" |
在其他作系统上,如果想要不使用代理,只需将HTTPS_PROXY变量保留为未设置。