Hyper-V-三台虚拟机安装启动使用完全指南

Hyper-V · Windows 10 专业版 + Ubuntu 26.04 LTS × 2 · 图文教程

📚 目录

一、虚拟机总览

虚拟机 操作系统 CPU 内存 磁盘(实际/上限) 用途
Windows10-VM Windows 10 专业版 4 vCPU 4 GB (动态 2-8 GB) 4 MB / 60 GB Windows 应用测试、IE 兼容
Ubuntu-Dev Ubuntu 26.04 Server 2 vCPU 2 GB (动态 0.5-4 GB) 4 MB / 20 GB 后端开发、SSH 服务
Ubuntu-Docker Ubuntu 26.04 Server 2 vCPU 2 GB (动态 0.5-4 GB) 4 MB / 20 GB Docker 容器测试
合计 3 个系统 8 vCPU 8 GB 12 MB / 100 GB ---

二、通用操作(三台 VM 通用)

2.1 打开 Hyper-V 管理器

2.2 启动、连接、关闭虚拟机

PowerShell 命令

启动虚拟机

Start-VM -Name 'Windows10-VM'

Start-VM -Name 'Ubuntu-Dev'

Start-VM -Name 'Ubuntu-Docker'

连接到虚拟机控制台(会弹出 vmconnect 窗口)

vmconnect localhost 'Windows10-VM'

vmconnect localhost 'Ubuntu-Dev'

vmconnect localhost 'Ubuntu-Docker'

正常关机(需要 VM 内系统支持) Stop-VM -Name 'Ubuntu-Dev'

强制关闭(相当于拔电源,不推荐) Stop-VM -Name 'Ubuntu-Dev' -TurnOff

重启 Restart-VM -Name 'Ubuntu-Dev' -Force

查看所有 VM 状态 Get-VM | Format-Table Name, State, ProcessorCount -AutoSize

2.3 增强会话模式

三、Windows 10 专业版 Windows10-VM

3.1 安装前准备

获取 Windows 10 专业版 ISO

Windows 是商业软件,需要合法的 ISO 镜像。推荐以下方式:

方式 说明 费用
微软官网下载 microsoft.com/software-download/windows10,使用媒体创建工具 免费下载,需密钥激活
评估版 evalcenter.microsoft.com 下载 90 天评估版 免费 90 天
MSDN/VLSC 有学校或企业订阅可下载正版 订阅费

将 ISO 放到 D:\VMs\ISOs\ 目录,文件名如 win10-pro.iso

3.2 挂载 ISO 并启动

挂载 Windows 10 ISO

Set-VMDvdDrive -VMName 'Windows10-VM' -Path 'D:\VMs\ISOs\win10-pro.iso'

启动虚拟机

Start-VM -Name 'Windows10-VM'

连接到虚拟机控制台

vmconnect localhost 'Windows10-VM'

3.3 安装步骤(图示)

1启动安装程序

VM 从 DVD 启动后,首先看到 Windows 安装界面

2 点击"现在安装"

3 输入产品密钥或跳过

没有密钥可点"我没有产品密钥",安装后再激活

4 选择操作系统版本

5 接受许可条款

勾选"我接受许可条款",下一步

6 选择"自定义:仅安装 Windows(高级)"

7 选择安装位置

看到 60GB 未分配空间,直接点"下一步"

8 等待安装完成(约 10-15 分钟)

9 初次配置(OOBE)

安装完成后进入欢迎界面,按向导完成:

✓选择区域和键盘布局

✓创建本地账户(建议离线创建,速度更快)

✓隐私设置:全部关闭

✓等待配置完成,进入桌面

3.4 安装后优化

减小磁盘占用

关闭休眠 (省 2-4 GB)

power cfg /h off

组件清理

Dism /Online /Cleanup-Image /StartComponentCleanup /ResetBase

磁盘清理

clean mgr /sageset:1

验证增强会话

用 vmconnect 连接 VM 时,如果弹出分辨率选择对话框,说明增强会话已生效:

3.5 使用场景

四、Ubuntu-Dev 开发服务器 Ubuntu 26.04 LTS

4.1 启动并进入安装界面

确认 ISO 已挂载(应该已经挂载了)

Get-VMDvdDrive -VMName 'Ubuntu-Dev'

启动虚拟机

Start-VM -Name 'Ubuntu-Dev'

连接到控制台

vmconnect localhost 'Ubuntu-Dev'

启动后会在 vmconnect 窗口中看到 Ubuntu 安装程序的引导菜单。

4.2 安装步骤(图示)

1 选择安装语言

2 选择安装类型

3 键盘配置

4 网络配置

5 代理和镜像源

6 存储配置

7 用户配置

8 SSH 配置(重要!)

9 等待安装完成(约 5-10 分钟)

10 安装完成,弹出 ISO 并重启

4.3 安装后配置

系统更新

sudo apt update && sudo apt upgrade -y

安装开发工具链

基础开发工具 sudo apt install -y git curl wget vim build-essential

Python 3 + pip sudo apt install -y python3 python3-pip python3-venv

Node.js 22 (LTS) curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash - sudo apt install -y nodejs

Go sudo apt install -y golang # Java (OpenJDK 21) sudo apt install -y openjdk-21-jdk

配置 SSH 密钥登录

在宿主机生成密钥(如果没有) ssh-keygen -t ed25519

将公钥复制到 VM ssh-copy-id dev@<VM-IP>

之后可以免密登录 ssh dev@<VM-IP>

VM 的 IP 可通过 Get-VMNetworkAdapter -VMName 'Ubuntu-Dev' 查看,或 DHCP 分配的 172.x.x.x 地址

4.4 使用场景

👨🏻‍💻 后端开发

✓Node.js / Python / Go / Java 项目开发

✓数据库:MySQL、Redis、PostgreSQL

✓消息队列:RabbitMQ、Kafka

✓Nginx 反向代理

📱 SSH 远程开发

✓VS Code Remote-SSH 插件直连 VM

✓代码在 VM 里跑,编辑器在宿主机

✓Git 提交、构建、调试全在 VM

VS Code Remote-SSH

装 VS Code "Remote - SSH" 插件,F1 → Remote-SSH: Connect to Host → 输入 VM 的 IP,即可在宿主机编辑器中开发 VM 内的代码

五、Ubuntu-Docker 容器测试 Ubuntu 26.04 LTS

5.1 安装步骤

Ubuntu-Docker 的系统安装步骤与 Ubuntu-Dev 完全相同(参见 4.2 节的 10 个步骤),区别在于:

配置项 Ubuntu-Dev Ubuntu-Docker
主机名 ubuntu-dev ubuntu-docker
用户名 dev docker
额外勾选 OpenSSH OpenSSH + Docker (snap)

💡 Docker 安装选择

在安装步骤第 8 步(Featured Server Snaps)页面,可以勾选 Docker 直接安装。也可以安装系统后手动安装,推荐手动安装(见 5.2 节),版本更新且配置更灵活。

5.2 安装后配置:Docker 环境

系统更新

sudo apt update && sudo apt upgrade -y

安装 Docker(官方源,推荐)

安装依赖 sudo apt install -y ca-certificates curl gnupg lsb-release

添加 Docker 官方 GPG 密钥 sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \ sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod a+r /etc/apt/keyrings/docker.gpg

添加 Docker apt 仓库 echo "deb arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg \ https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | \ sudo tee /etc/apt/sources.list.d/docker.list

安装 Docker Engine + Compose sudo apt update sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

将当前用户加入 docker 组(免 sudo) sudo usermod -aG docker $USER newgrp docker

验证 docker --version docker run hello-world

✅ 验证 Docker 是否正常运行

看到 Hello from Docker! 信息说明安装成功。如果提示权限不足,执行 newgrp docker 或重新登录。

安装 Docker 管理工具

Portainer - Web UI 管理面板 docker run -d -p 9000:9000 --name portainer \ --restart=always \ -v /var/run/docker.sock:/var/run/docker.sock \ -v portainer_data:/data \ portainer/portainer-ce:latest

访问: http://<VM-IP>:9000

ctop - 终端容器监控 sudo apt install -y ctop

5.3 使用场景

常用 Docker 操作示例

拉取并运行 Nginx docker run -d -p 8080:80 --name web nginx

拉取并运行 MySQL docker run -d -p 3306:3306 --name mysql \ -e MYSQL_ROOT_PASSWORD=mysecret mysql:8

拉取并运行 Redis docker run -d -p 6379:6379 --name redis redis:7

查看运行中的容器 docker ps

查看所有容器(包括已停止) docker ps -a

查看镜像 docker images

查看磁盘使用 docker system df

六、命令速查表

启动 & 连接

启动单台

Start-VM 'Windows10-VM' Start-VM 'Ubuntu-Dev' Start-VM 'Ubuntu-Docker'

一键启动所有 Get-VM | Start-VM

连接到控制台 vmconnect localhost 'Ubuntu-Dev'

关机 & 重启

正常关机 Stop-VM 'Ubuntu-Dev'

强制关闭 Stop-VM 'Ubuntu-Dev' -TurnOff

重启 Restart-VM 'Ubuntu-Dev' -Force

关闭所有 VM Get-VM | Stop-VM -Force

检查点(快照)

创建检查点 Checkpoint-VM 'Ubuntu-Dev' -SnapshotName 'Clean Install'

查看检查点 Get-VMSnapshot -VMName 'Ubuntu-Dev'

恢复到检查点 Restore-VMSnapshot -VMName 'Ubuntu-Dev' -Name 'Clean Install' -Confirm:$false

删除检查点(合并到当前) Remove-VMSnapshot -VMName 'Ubuntu-Dev' -Name 'Clean Install'

ISO 管理

挂载 ISO Set-VMDvdDrive -VMName 'Windows10-VM' -Path 'D:\VMs\ISOs\win10.iso'

弹出 ISO Get-VMDvdDrive -VMName 'Ubuntu-Dev' | Set-VMDvdDrive -Path $null

查看状态

所有 VM 状态 Get-VM | Format-Table Name, State, ProcessorCount, Uptime -AutoSize

单台 VM 详情 Get-VM -Name 'Ubuntu-Dev' | Format-List *

查看磁盘实际占用 Get-VM | ForEach-Object { hd = Get-VMHardDiskDrive -VMName .Name vhd = Get-VHD -Path hd.Path Write-Host "(.Name): (\[math\]::Round(vhd.FileSize/1MB,1)) MB / (\[math\]::Round(vhd.Size/1GB,1)) GB" }

SSH 远程连接 Ubuntu

在宿主机 PowerShell 中执行

先获取 VM 的 IP Get-VMNetworkAdapter -VMName 'Ubuntu-Dev' | Select-Object IPAddresses

SSH 连接 ssh dev@172.x.x.x # 文件传输 scp localfile.txt dev@172.x.x.x:/home/dev/

七、技巧与排障

技巧 1:创建检查点保护系统

每台 VM 系统安装完成后,立即创建检查点:

Checkpoint-VM 'Windows10-VM' -SnapshotName 'Clean Install' Checkpoint-VM 'Ubuntu-Dev' -SnapshotName 'Clean Install' Checkpoint-VM 'Ubuntu-Docker' -SnapshotName 'Clean Install'

这样如果后续操作出问题,可以随时恢复到干净状态。

技巧 2:优化 VHDX 磁盘空间

压缩 VHDX 文件(需 VM 关闭) Stop-VM 'Ubuntu-Dev' -Force Optimize-VHD -Path 'D:\VMs\Ubuntu-Dev\ubuntu-dev.vhdx' -Mode Full Start-VM 'Ubuntu-Dev'

删除大量文件后执行此操作可以回收物理磁盘空间。

技巧 3:Ubuntu 换源加速

替换为清华源 sudo sed -i 's|archive.ubuntu.com|mirrors.tuna.tsinghua.edu.cn|g' /etc/apt/sources.list sudo apt update

排障:VM 启动黑屏

现象 原因 解决
vmconnect 全黑 VM 刚启动,还在 POST 等待 10-15 秒
一直黑屏 ISO 未正确挂载 Set-VMDvdDrive -VMName 'xxx' -Path 'ISO路径'
启动循环 安装后未弹出 ISO `Get-VMDvdDrive -VMName 'xxx'
Secure Boot 报错 Ubuntu 与 Secure Boot 模板不匹配 Set-VMFirmware -VMName 'xxx' -SecureBootTemplate MicrosoftUEFICertificateAuthority

排障:Ubuntu SSH 连不上

1确认 SSH 已安装:sudo apt install openssh-server

2确认服务运行中:sudo systemctl status ssh

3确认防火墙放行:sudo ufw allow 22

4获取 VM IP:Get-VMNetworkAdapter -VMName 'Ubuntu-Dev'

5宿主机连接:ssh 用户名@VM的IP

Hyper-V 三台虚拟机安装启动使用完全指南 · Windows 10 专业版 + Ubuntu 26.04 LTS × 2

Dell XPS 9320 · i7-1260P · 32GB RAM · 动态 VHDX 最小占用方案

相关推荐
susplus1 小时前
【专题】frmaebuffer打印bmp图片
linux·bmp·framebuffer
牢姐与蒯1 小时前
Linux进程(三)之进程状态_僵尸孤儿
linux·运维·服务器·ubuntu·c
mengge.cloud1 小时前
云计算&服务器基础小白教程
android·linux·运维·服务器·网络·云计算
一路向北finish1 小时前
《Hadoop 高可用集群与 OpenStack Mitaka 控制节点部署全流程实操排坑指南》
大数据·linux·运维·服务器·hadoop·openstack
南棱笑笑生1 小时前
20260826解决在Ubuntu22.04系统下编译RK3572的Buildroot【linux-6.12.69】出现CMake异常的问题
linux·运维·服务器
lskblog2 小时前
Ubuntu 18.04 安装 LibreOffice(用于 Word 在线预览转换)
java·linux·python·ubuntu·word·php·laravel
敲上瘾3 小时前
Redis持久化存储机制:从RDB到AOF再到混合持久化的配置与实践
linux·数据库·redis·缓存
小张同学a.3 小时前
OpenStack 私有云实战 2—— Glance 镜像与 Nova 计算服务搭建
linux·运维·服务器·openstack
xiaoye-duck3 小时前
《Linux网络编程》TCP 网络编程(下):基于 TCP 多线程通用字典服务 + 远程命令执行实战
linux·服务器·tcp/ip