az vm repair

注意

此參考是 Azure CLI VM 修復 延伸模組的一部分 (2.0.67 版或更高版本)。 擴充功能會在您第一次執行 az vm repair 命令時自動安裝。 深入了解擴充功能。

自動修復命令以修正 VM。

VM 修復命令可讓 Azure 使用者複製來源 VM 的 OS 磁片,並將其連結至新建立的修復 VM,以自我修復不可開機的 VM。

命令

名稱 Description 類型 狀態
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

虛擬機器的名稱。 您可以使用 來設定預設值 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 散發版本建立修復 VM 的選項(rhel7|rhel8|suse12|ubuntu20|centos7|oracle7)。

預設值: 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

訂用帳戶的名稱或識別碼。 您可以使用 來設定預設訂用 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

訂用帳戶的名稱或識別碼。 您可以使用 來設定預設訂用 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

一或多個資源識別碼 (以空格分隔)。 它應該是包含 「資源識別碼」引數所有資訊的完整資源識別碼。 您應該提供 --ids 或其他「資源識別碼」引數。

--name -n

虛擬機器的名稱。 您可以使用 來設定預設值 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

訂用帳戶的名稱或識別碼。 您可以使用 來設定預設訂用 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

訂用帳戶的名稱或識別碼。 您可以使用 來設定預設訂用 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。 指定訂用帳戶識別碼、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

一或多個資源識別碼 (以空格分隔)。 它應該是包含 「資源識別碼」引數所有資訊的完整資源識別碼。 您應該提供 --ids 或其他「資源識別碼」引數。

--name -n

虛擬機器的名稱。 您可以使用 來設定預設值 az configure --defaults vm=<name>

--resource-group -g

資源組名。 您可以使用 來設定預設群組 az configure --defaults group=<name>

--subscription

訂用帳戶的名稱或識別碼。 您可以使用 來設定預設訂用 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

訂用帳戶的名稱或識別碼。 您可以使用 來設定預設訂用 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

一或多個資源識別碼 (以空格分隔)。 它應該是包含 「資源識別碼」引數所有資訊的完整資源識別碼。 您應該提供 --ids 或其他「資源識別碼」引數。

--name -n

虛擬機器的名稱。 您可以使用 來設定預設值 az configure --defaults vm=<name>

--repair-vm-id

修復 VM 資源識別碼。

--resource-group -g

資源組名。 您可以使用 來設定預設群組 az configure --defaults group=<name>

--subscription

訂用帳戶的名稱或識別碼。 您可以使用 來設定預設訂用 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

訂用帳戶的名稱或識別碼。 您可以使用 來設定預設訂用 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]

範例

直接在 VM 上執行 <run-id> 腳本。

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

一或多個資源識別碼 (以空格分隔)。 它應該是包含 「資源識別碼」引數所有資訊的完整資源識別碼。 您應該提供 --ids 或其他「資源識別碼」引數。

--name -n

虛擬機器的名稱。 您可以使用 來設定預設值 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 資源識別碼。

--resource-group -g

資源組名。 您可以使用 來設定預設群組 az configure --defaults group=<name>

--run-id

執行腳本的唯一執行識別碼。

--run-on-repair

腳本將會在連結的修復 VM 上執行。

預設值: False
--subscription

訂用帳戶的名稱或識別碼。 您可以使用 來設定預設訂用 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

訂用帳戶的名稱或識別碼。 您可以使用 來設定預設訂用 az account set -s NAME_OR_ID 帳戶。

--verbose

增加記錄詳細資訊。 使用 --debug 來取得完整偵錯記錄。