你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

az vm repair

注意

此参考是 Azure CLI(版本 2.0.67 或更高版本)的 vm 修复扩展的一部分。 该扩展将在首次运行 az vm repair 命令时自动安装。 详细了解扩展。

用于修复 VM 的自动修复命令。

VM 修复命令将通过复制源 VM 的 OS 磁盘并将其附加到新创建的修复 VM,使 Azure 用户能够自行修复不可启动的 VM。

命令

名称 说明 类型 状态
az vm repair create

创建新的修复 VM,并将源 VM 复制的 OS 磁盘附加为数据磁盘。

分机 GA
az vm repair list-scripts

列出可用的脚本。 定位。https://github.com/Azure/repair-script-library

分机 GA
az vm repair repair-and-restore

修复和还原 VM。

分机 预览
az vm repair reset-nic

重置 VM 来宾 OS 上的网络接口堆栈。 https://docs.microsoft.com/en-us/troubleshoot/azure/virtual-machines/reset-network-interface

分机 预览
az vm repair restore

将源 VM 的 OS 磁盘替换为修复 VM 中的数据磁盘。

扩展 GA
az vm repair run

在 VM 上运行 GitHub 中已验证的脚本。 用于查看可用脚本的“az vm repair list-scripts”。

分机 GA

az vm repair create

创建新的修复 VM,并将源 VM 复制的 OS 磁盘附加为数据磁盘。

az vm repair create --name
                    --resource-group
                    [--associate-public-ip]
                    [--copy-disk-name]
                    [--distro]
                    [--enable-nested]
                    [--repair-group-name]
                    [--repair-password]
                    [--repair-username]
                    [--repair-vm-name]
                    [--unlock-encrypted-vm]
                    [--yes]

示例

创建修复 VM

az vm repair create -g MyResourceGroup -n myVM --verbose

创建修复 VM 并设置 VM 身份验证

az vm repair create -g MyResourceGroup -n myVM --repair-username username --repair-password password!234 --verbose

还可以创建特定发行版或特定 URN 的修复 VM

az vm repair create -g MyResourceGroup -n myVM --distro 'rhel7|sles12|ubuntu20|centos6|oracle8|sles15'

必需参数

--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

可选参数

--associate-public-ip

用于创建具有公共 IP 的修复 VM 的选项。

默认值: False
--copy-disk-name

OS 磁盘副本的名称。

--distro

从特定 Linux 发行版(rhel7|rhel8|suse12|ubuntu20|centos7|oracle7)创建修复 VM 的选项。

默认值: ubuntu
--enable-nested

启用嵌套 hyperv。

默认值: False
--repair-group-name

将包含修复 VM 的新资源组或现有资源组的名称。

--repair-password

管理员修复 VM 的密码。

--repair-username

管理员修复 VM 的用户名。

--repair-vm-name

修复 VM 的名称。

--unlock-encrypted-vm

使用当前订阅身份验证自动解锁加密 VM 的选项。

默认值: False
--yes

用于跳过关联公共 IP 的提示的选项,并在无 Tty 模式下确认是的。

默认值: False
全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm repair list-scripts

列出可用的脚本。 定位。https://github.com/Azure/repair-script-library

az vm repair list-scripts [--preview]

示例

列出脚本

az vm repair list-scripts --verbose

仅列出 Windows 脚本。

az vm repair list-scripts --query "[?starts_with(id, 'win')]"

列出其说明中带有测试的脚本。

az vm repair list-scripts --query "[?contains(description, 'test')]"

列出分支中的未验证脚本 https://github.com/Azure/repair-script-library

az vm repair list-scripts --preview "https://github.com/User/repair-script-library/blob/main/map.json"

可选参数

--preview

分叉修复脚本库的 map.json https://github.com/{user}/repair-script-library/blob/master/map.json的 URL。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm repair repair-and-restore

预览

此命令处于预览阶段,正在开发中。 参考和支持级别: https://aka.ms/CLI_refstatus

修复和还原 VM。

az vm repair repair-and-restore [--copy-disk-name]
                                [--ids]
                                [--name]
                                [--repair-group-name]
                                [--repair-password]
                                [--repair-username]
                                [--repair-vm-name]
                                [--resource-group]
                                [--subscription]

示例

修复和还原 VM。

az vm repair repair-and-restore --name vmrepairtest --resource-group MyResourceGroup --verbose

可选参数

--copy-disk-name

OS 磁盘副本的名称。

--ids

一个或多个资源 ID(空格分隔)。 它应该是包含“资源 ID”参数的所有信息的完整资源 ID。 应提供 --id 或其他“资源 ID”参数。

--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--repair-group-name

将包含修复 VM 的新资源组或现有资源组的名称。

--repair-password

管理员修复 VM 的密码。

--repair-username

管理员修复 VM 的用户名。

--repair-vm-name

修复 VM 的名称。

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm repair reset-nic

预览

此命令处于预览阶段,正在开发中。 参考和支持级别: https://aka.ms/CLI_refstatus

重置 VM 来宾 OS 上的网络接口堆栈。 https://docs.microsoft.com/en-us/troubleshoot/azure/virtual-machines/reset-network-interface

az vm repair reset-nic [--ids]
                       [--name]
                       [--resource-group]
                       [--subscription]
                       [--yes]

示例

重置 VM 来宾 NIC。 指定 VM 资源组和名称。

az vm repair reset-nic -g MyResourceGroup -n MyVM --verbose

重置 VM 来宾 NIC。 指定订阅 ID、VM 资源组和名称。

az vm repair reset-nic -g MyResourceGroup -n MyVM --subscription mySub --verbose

重置 VM 来宾 NIC,并在 VM 未处于运行状态时自动启动 VM。

az vm repair reset-nic -g MyResourceGroup -n MyVM --yes --verbose

可选参数

--ids

一个或多个资源 ID(空格分隔)。 它应该是包含“资源 ID”参数的所有信息的完整资源 ID。 应提供 --id 或其他“资源 ID”参数。

--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--yes

如果 VM 未运行,请不要提示确认启动 VM。

默认值: False
全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm repair restore

将源 VM 的 OS 磁盘替换为修复 VM 中的数据磁盘。

az vm repair restore [--disk-name]
                     [--ids]
                     [--name]
                     [--repair-vm-id]
                     [--resource-group]
                     [--subscription]
                     [--yes]

示例

从修复 VM 还原,命令会自动搜索 repair-vm

az vm repair restore -g MyResourceGroup -n MyVM --verbose

从修复 VM 还原,指定要还原的磁盘

az vm repair restore -g MyResourceGroup -n MyVM --disk-name MyDiskCopy --verbose

可选参数

--disk-name

固定数据磁盘的名称。 默认为修复 VM 中的第一个数据磁盘。

--ids

一个或多个资源 ID(空格分隔)。 它应该是包含“资源 ID”参数的所有信息的完整资源 ID。 应提供 --id 或其他“资源 ID”参数。

--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--repair-vm-id

修复 VM 资源 ID。

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--yes

在不确认的情况下删除修复资源。

默认值: False
全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。

az vm repair run

在 VM 上运行 GitHub 中已验证的脚本。 用于查看可用脚本的“az vm repair list-scripts”。

az vm repair run [--custom-script-file]
                 [--ids]
                 [--name]
                 [--parameters]
                 [--preview]
                 [--repair-vm-id]
                 [--resource-group]
                 [--run-id]
                 [--run-on-repair]
                 [--subscription]

示例

直接在 <run-id> VM 上运行脚本。

az vm repair run -g MyResourceGroup -n MySourceWinVM --run-id win-hello-world --verbose

在链接的修复 VM 上运行脚本 <run-id> 。

az vm repair run -g MyResourceGroup -n MySourceWinVM --run-id win-hello-world --run-on-repair --verbose

在 VM 上运行具有参数的脚本。

az vm repair run -g MyResourceGroup -n MySourceWinVM --run-id win-hello-world --parameters hello=hi world=earth --verbose

在 VM 上运行本地自定义脚本。

az vm repair run -g MyResourceGroup -n MySourceWinVM --custom-script-file ./file.ps1 --verbose

从分支运行未验证的脚本 https://github.com/Azure/repair-script-library

az vm repair run -g MyResourceGroup -n MySourceWinVM --preview "https://github.com/User/repair-script-library/blob/main/map.json" --run-id test

可选参数

--custom-script-file

在 VM 上运行的自定义脚本文件。 脚本应是适用于 Windows 的 PowerShell,适用于 Linux 的 Bash。

--ids

一个或多个资源 ID(空格分隔)。 它应该是包含“资源 ID”参数的所有信息的完整资源 ID。 应提供 --id 或其他“资源 ID”参数。

--name -n

虚拟机的名称。 可以使用 < a0/a0> 配置默认值 az configure --defaults vm=<name>

--parameters

以“[name=]value”格式分隔的空间分隔参数。 bash 脚本的位置。

--preview

分叉修复脚本库的 map.json https://github.com/{user}/repair-script-library/blob/master/map.json的 URL。

--repair-vm-id

修复 VM 资源 ID。

--resource-group -g

资源组的名称。 可以使用 az configure --defaults group=<name> 配置默认组。

--run-id

运行脚本的唯一运行 ID。

--run-on-repair

脚本将在链接的修复 VM 上运行。

默认值: False
--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

全局参数
--debug

提高日志记录详细程度以显示所有调试日志。

--help -h

显示此帮助消息并退出。

--only-show-errors

只显示错误,取消显示警告。

--output -o

输出格式。

接受的值: json, jsonc, none, table, tsv, yaml, yamlc
默认值: json
--query

JMESPath 查询字符串。 有关更多信息和示例,请参阅 http://jmespath.org/

--subscription

订阅的名称或 ID。 可以使用 az account set -s NAME_OR_ID 配置默认订阅。

--verbose

提高日志记录详细程度。 使用 --debug 获取完整的调试日志。