Master AzCopy:下载、安装和进行身份验证

AzCopy工具是一个免费且方便的工具,允许您复制和移动数据到Azure存储和从Azure存储中。这是一个非常好用的命令行实用工具,可以自动化和简化这个过程,但需要进行一些设置。让我们来看看如何下载AzCopy并开始使用吧。

在这篇文章中,您将学习如何准备系统以使用AzCopy。这包括下载和验证工具,以便访问Azure存储。到您完成时,您将准备好使用AzCopy来管理Azure存储数据。

截至撰写本文时,AzCopy的最新版本是AzCopy v10。AzCopy可用于WindowsLinuxmacOS。本文仅涵盖Windows AzCopy实用程序。

先决条件

在本文中,您将亲自学习如何执行一些不同的任务。如果您想跟着做,请确保您已满足以下先决条件。

下载 AzCopy:手动方式

有几种不同的方式可以下载 AzCopy。首先,让我们以手动方式进行。如果您不打算一次在多台计算机上安装 AzCopy,则可以使用此方法。

转到此 URL – https://aka.ms/downloadazcopy-v10-windows,应该会启动 zip 文件的下载。下载完成后,将 zip 文件解压缩到C:\AzCopy或您选择的文件夹中。

最后,将安装目录添加到系统路径中。 如果您需要了解如何执行此操作,请参考文章如何在Windows中设置路径和环境变量。 将文件夹路径添加到Windows PATH允许您在命令行中的任何工作目录中调用azcopy可执行文件。

通过 PowerShell 脚本下载 AzCopy

如果您打算在许多计算机上安装 AzCopy,或者只是需要为其他人提供安装说明,您也可以使用 PowerShell。 使用 PowerShell 脚本将该过程简化为一个脚本。

创建一个新的 PowerShell 脚本,并将下面的内容复制粘贴到其中。 通过检查内联注释,您可以了解脚本的每个部分正在执行的操作。

默认情况下,下面的脚本将在C:\AzCopy文件夹中下载 AzCopy。 如果您想更改该路径,在运行脚本时,请使用InstallPath参数,或者直接在脚本中更改默认路径。

$InstallPath = 'C:\AzCopy'

# 清理目标
if (Test-Path $InstallPath) {
    Get-ChildItem $InstallPath | Remove-Item -Confirm:$false -Force
}

# 压缩目标
$zip = "$InstallPath\AzCopy.Zip"

# 创建安装文件夹(例如 C:\AzCopy)
$null = New-Item -Type Directory -Path $InstallPath -Force

# 下载用于 Windows 的 AzCopy 压缩文件
Start-BitsTransfer -Source "https://aka.ms/downloadazcopy-v10-windows" -Destination $zip

# 解压缩压缩文件
Expand-Archive $zip $InstallPath -Force

# 移动到 $InstallPath
Get-ChildItem "$($InstallPath)\*\*" | Move-Item -Destination "$($InstallPath)\" -Force

# 清理 - 删除 ZIP 文件和旧文件夹
Remove-Item $zip -Force -Confirm:$false
Get-ChildItem "$($InstallPath)\*" -Directory | ForEach-Object { Remove-Item $_.FullName -Recurse -Force -Confirm:$false }

# 如果不存在,将 InstallPath 添加到系统路径
if ($env:PATH -notcontains $InstallPath) {
    $path = ($env:PATH -split ";")
    if (!($path -contains $InstallPath)) {
        $path += $InstallPath
        $env:PATH = ($path -join ";")
        $env:PATH = $env:PATH -replace ';;', ';'
    }
    [Environment]::SetEnvironmentVariable("Path", ($env:path), [System.EnvironmentVariableTarget]::Machine)
}

脚本运行完成后,您可以确认 AzCopy 已成功下载。在 PowerShell 控制台中,通过运行 Get-ChildItem -Path $InstallPath 列出安装路径中的文件,替换为您使用的任何文件夹。

如果一切顺利,您应该会看到 azcopy.exe 实用程序和许可证文本文件。

您还可以通过运行 $env:Path -split ";" 确认已将安装文件夹添加到系统路径变量,并注意到安装文件夹显示在列表底部。

在下面的示例中,列出了 C:\AzCopy,这意味着位置已成功添加。

Download AzCopy directory

验证 AzCopy

下载 AzCopy 任务应该已经完成。但在执行任何任务之前,有必要对 Azure 订阅进行身份验证,以首先访问 Azure 存储。

有两种方法可以对 AzCopy 进行身份验证,连接到你的 Azure 存储账户 – 通过 Azure Active Directory 或使用共享访问签名(SAS)令牌。在本文中,我们将专注于使用 Azure AD。如果你想了解如何创建 SAS 令牌以进行身份验证,请查看《如何生成Azure SAS令牌以访问存储账户》。

AzCopy 最常用的身份验证方法是通过 Azure AD。在使用 Azure AD 时,你有几个选项。其中一些选项包括:

– 交互式登录 – 用户被提示使用浏览器登录。
– 服务主体 + 密码 – 用于非交互式登录。推荐用于自动化和脚本。
– 服务主体 + 证书 – 用于非交互式登录。推荐用于自动化和脚本。

在本文中,你将学习如何通过交互式登录进行身份验证。为此,请首先打开命令提示符或 PowerShell 并运行以下命令。`–tenant-id` 参数是可选的,但建议使用,特别是如果你的登录账户与多个 Azure 租户关联。

> azcopy login --tenant-id "TENANT-ID"`

如果您需要帮助查找Azure AD租户ID,请查看此文章

执行后,将要求您打开浏览器并导航至https://login.microsoftonline.com/common/oauth2/deviceauth,然后输入显示的代码。您可以在下面看到示例。

Enter the code from AzCopy into the browser

在浏览器中输入代码后,点击“下一步”然后继续登录您的账户。

Sign in to Azure AD

当登录完成时,您应该在浏览器和终端中看到类似于下面截图所示的状态。

AzCopy login is successful

总结

最后,您现在已经掌握了如何在您的设备上下载和验证AzCopy所需的知识。

既然您掌握了这些知识,现在应该准备好开始使用AzCopy了!如果您想试试AzCopy,请转到下一篇文章如何使用AzCopy管理本地和Azure存储中的文件,了解如何使用AzCopy管理和传输本地和Azure存储之间的数据。

Source:
https://adamtheautomator.com/azcopy-download/