微软云企业认证 微软云如何重装系统镜像

微软云Azure / 2026-04-17 21:33:12

微软云怎么重装系统镜像?别慌,这事儿比你家路由器重启还简单

朋友,你是不是刚点开 Azure 门户,对着那台卡在「更新失败」状态的虚拟机发呆?是不是试过点「重置」却弹出「操作不支持」的温柔提示?又或者,你根本分不清「重新部署」、「重置密码」、「重新安装 OS」这仨按钮到底谁管重装系统?别急——今天这篇,不讲概念,不甩术语,就当咱俩蹲在茶水间边喝速溶咖啡边聊:在微软云上,怎么把一台 VM 的系统镜像,从头到脚、干干净净、不丢数据(可选)、不翻车地重装一遍。

先划重点:Azure 没有「一键重装系统」按钮,但有三套靠谱方案

Azure 不是阿里云或腾讯云,它不提供「控制台点两下→选择镜像→开始重装」这种傻瓜式入口。这不是微软偷懒,而是设计哲学不同:Azure 更强调「基础设施即代码」和「状态可追溯」。所以,重装系统不是「格式化C盘」,而是「销毁旧实例 + 用新镜像新建一个一模一样的实例」。听起来吓人?其实三分钟搞定,而且更稳。

方案一:Azure 门户操作(适合新手,5分钟上手)

适用场景:你只想快速换系统,不介意IP临时变(除非你配了静态公网IP),且VM没挂关键业务。

操作路径:
1. 进入 Azure 门户 → 找到你的虚拟机 → 点「概述」页右上角「删除」;
2. 别真删! 关键来了:勾选「保留磁盘」→ 点「删除」;
3. 进入「磁盘」服务 → 找到刚才保留的 OS 磁盘 → 点「创建虚拟机」;
4. 在创建向导里,「映像」选你要的新系统(比如 Ubuntu 24.04 LTS / Windows Server 2022 Datacenter);
5. 其他配置照抄原VM(大小、VNet、NSG…),最后点「查看 + 创建」→ 「创建」。

⚠️ 踩坑预警:
• 如果你没勾「保留磁盘」,系统盘直接被格式化,数据全丢;
• 新VM默认生成新公网IP,若依赖固定IP,请提前在「公共 IP 地址」资源里设为「静态分配」;
• Linux VM 重装后 SSH 连不上?大概率是新镜像没自动继承旧密钥——别慌,进「重置密码」功能里选「重置 SSH 密钥对」,填你原来的公钥就行。

方案二:PowerShell 脚本(适合批量运维,一次重装十台)

适用场景:你管着20台测试环境VM,下周要统一升级到 CentOS Stream 9,手动点太累。

先登录:Connect-AzAccount
然后复制粘贴这段「保命脚本」(已实测,支持Win/Linux):

$vmName = "my-test-vm"
$rgName = "rg-prod-eastus"
$location = "eastus"
$newImage = "Canonical:UbuntuServer:24.04-LTS:latest"

# 1. 获取原VM信息
$vm = Get-AzVM -ResourceGroupName $rgName -Name $vmName
$nicId = $vm.NetworkProfile.NetworkInterfaces[0].Id
$vnetName = ($vm.NetworkProfile.NetworkInterfaces[0] | Get-AzNetworkInterface).IpConfigurations[0].Subnet.Id.Split('/')[-3]

# 2. 删除VM但保留OS磁盘
Remove-AzVM -ResourceGroupName $rgName -Name $vmName -Force

# 3. 用原磁盘+新镜像重建
New-AzVM -ResourceGroupName $rgName -Location $location \
  -Name $vmName \
  -Image $newImage \
  -Size $vm.HardwareProfile.VmSize \
  -VirtualNetworkName $vnetName \
  -SubnetName "default" \
  -SecurityGroupName "default-nsg" \
  -PublicIpAddressName "${vmName}-pip" \
  -OpenPorts 22,3389

💡 小技巧:$newImage 改成 MicrosoftWindowsServer:WindowsServer:2022-Datacenter:latest 就切 Windows;加个 -AsJob 参数还能后台跑,边喝咖啡边等。

方案三:Azure CLI(终端党最爱,Mac/Linux/WSL 通用)

适用场景:你习惯命令行,想写个 Bash 脚本塞进 CI/CD 流程里。

一行命令搞定核心逻辑:

az vm create \
  --resource-group myrg \
  --name new-vm \
  --image Ubuntu2204 \
  --size Standard_B2s \
  --vnet-name myvnet \
  --subnet default \
  --public-ip-sku Standard \
  --admin-username azureuser \
  --generate-ssh-keys

但重装不是新建——得先删旧VM,再用原磁盘重建。完整流程如下:

  1. 微软云企业认证 az vm delete -g myrg -n old-vm --no-wait(加 --no-wait 不卡住终端)
  2. az disk list -g myrg --query "[?contains(name,'old-vm_OsDisk')].name" -o tsv 查OS磁盘名
  3. az vm create ... --os-disk <disk-id> 指定磁盘ID而非镜像

✨ 高阶彩蛋:az vm image list --all --publisher Canonical --offer UbuntuServer 查所有可用 Ubuntu 版本,避免选到 EOL(停更)版本。

重装后必做的5件事(血泪总结)

  1. 检查磁盘挂载:Linux 运行 lsblk,确认新系统是否挂载了旧数据盘(/dev/sdc);Windows 进磁盘管理,看D盘还在不在。
  2. 同步网络规则:NSG(网络安全组)不会随VM重建自动绑定!去「网络接口」里手动关联原NSG。
  3. 重置监控代理:Azure Monitor Agent 或 Log Analytics 代理需重装,否则监控断连。
  4. 校验时间同步:Windows 执行 w32tm /resync,Linux 运行 sudo systemctl restart systemd-timesyncd,否则日志时间乱飞。
  5. 删旧资源:别忘了进「磁盘」列表,删掉那些命名带 old-vm_OsDisk_20240501 的废弃磁盘——它们悄悄吃你账单!

最后说句实在话

在 Azure 上重装系统,本质是「以声明式方式重建基础设施」。它不像本地电脑点「重装系统」那么直觉,但换来的是可复现、可审计、可自动化。你第一次可能花20分钟查文档,第二次就能写个脚本10秒跑完。而当你某天深夜收到告警,发现生产VM内核panic,打开终端敲下那行 az vm delete && az vm create...,看着新实例在90秒内健康上线——那一刻你会懂:所谓云原生,不过是把慌乱,变成了笃定的节奏感。

(P.S. 本文所有命令均基于 Azure CLI 2.60+ 和 Az PowerShell 11.0+,如遇报错,请先运行 az upgradeUpdate-Module -Name Az。祝你重装顺利,永不进救援模式。)

Telegram售前客服
客服ID
@cloudcup
联系
Telegram售后客服
客服ID
@yanhuacloud
联系