在 Hyper-V 中安装 Linux 虚拟机(VM)是一个常见且实用的需求,无论是为了开发测试、学习 Linux 命令,还是运行特定的 Linux 服务,Hyper-V 对 Linux 的支持已经非常成熟,尤其是通过集成服务(Integration Services)提供了良好的性能和功能支持。
以下是详细的安装步骤指南,涵盖从创建虚拟机到安装增强功能的完整流程。
准备工作
在开始之前,请确保你拥有以下资源:
- Hyper-V 管理器:已启用 Hyper-V 功能(Windows 10/11 专业版、企业版或教育版;Windows 11 家庭版需通过特定脚本启用)。
- Linux ISO 镜像文件:Ubuntu Server、CentOS Stream、Rocky Linux 或 Debian 的 ISO 文件。
- 足够的系统资源:建议至少分配 2GB 内存和 20GB 虚拟硬盘空间(根据需求调整)。
创建 Linux 虚拟机
- 打开 Hyper-V 管理器。
- 在右侧操作栏点击 “新建” -> “虚拟机”。
- 选择代次:
- 建议选择 第二代(Generation 2) 虚拟机,它支持 UEFI 启动、更快的启动速度,并且对 Linux 的集成服务支持更好。
- 注意:如果必须使用旧版硬件或特定内核,请选择第一代,但大多数现代 Linux 发行版推荐第二代。
- 分配内存:
- 为虚拟机分配内存,建议启用 “启用动态内存”(Enable Dynamic Memory),这样 Hyper-V 可以根据负载自动调整内存使用,节省宿主机资源。
- 配置网络:
- 选择已创建的 虚拟交换机(Virtual Switch),通常选择“默认交换机”或创建一个外部交换机以允许 VM 访问互联网。
- 创建虚拟硬盘:
设置虚拟硬盘的大小(40GB)和存储位置。
- 安装选项

:
- 选择 “从启动光盘安装操作系统的映像文件”。
- 浏览并选择你下载的 Linux ISO 文件。
安装 Linux 操作系统
- 在 Hyper-V 管理器中,右键点击刚创建的虚拟机,选择 “连接” (Connect) 打开控制台窗口。
- 启动虚拟机,你会看到 Linux 的安装引导界面(如 GRUB 或 Ubuntu 安装菜单)。
- 按照屏幕提示进行常规 Linux 安装:
- 选择语言、键盘布局。
- 选择安装类型(通常选择“最小化安装”或“标准安装”)。
- 设置用户名和密码。
- 完成分区和安装过程。
- 安装完成后,移除 ISO 镜像(在虚拟机设置中卸载光盘),然后重启虚拟机。
安装 Hyper-V 集成服务(关键步骤)
这是让 Linux 虚拟机获得高性能网络、时间同步、鼠标集成和优雅关机功能的关键步骤,不同发行版的安装方法略有不同。
通用方法:通过包管理器安装
大多数现代 Linux 发行版已将集成服务包含在内核模块中,但可能需要安装额外的工具包。
| 发行版类型 | 安装命令示例 | 说明 |
|---|---|---|
| Ubuntu / Debian | sudo apt updatesudo apt install linux-modules-extra-$(uname -r) |
安装额外的内核模块以支持 Hyper-V 功能。 |
| CentOS / RHEL / Rocky | sudo yum install hyperv-daemons或 sudo dnf install hyperv-daemons |
安装 Hyper-V 守护进程,提供时间同步和心跳服务。 |
|
Fedora | sudo dnf install hyperv-daemons | 同上。 |
| SUSE / openSUSE | sudo zypper install hyperv-daemons | 同上。 |
手动安装最新集成服务(可选)
如果上述包管理器方法无效,或者你需要最新的功能,可以从微软官网下载最新的 Linux Integration Services (LIS) ISO 文件。
- 下载最新的 LIS ISO 文件(搜索 “Microsoft Linux Integration Services”)。
- 在 Hyper-V 虚拟机设置中,将 LIS ISO 挂载到虚拟光驱。
- 在 Linux 终端中挂载光盘:
sudo mkdir /mnt/cdrom sudo mount /dev/cdrom /mnt/cdrom
- 运行安装脚本(具体命令取决于版本,通常如下):
cd /mnt/cdrom sudo ./install.sh
- 安装完成后重启虚拟机。
配置与优化
- 时间同步:Hyper-V 默认会尝试与宿主机同步时间,Linux 时间不准,检查
chronyd或ntpd服务是否禁用,因为 Hyper-V 集成服务会接管时间同步。 - 网络性能:确保在 Linux 中安装了正确的网卡驱动(
hv_netvsc模块会自动加载)。 - 剪贴板共享:Hyper-V 对 Linux 的剪贴板共享支持有限,如果需要频繁复制粘贴,建议使用
ssh或文件共享(SMB/NFS)。
常见问题排查
- 虚拟机启动黑屏:检查是否选择了正确的代次(Generation 2 需要 UEFI 兼容的 Linux 发行版)。
- 无法上网:检查虚拟交换机设置,确保 VM 连接到正确的网络。
- 集成服务未生效:在 Linux 终端运行
lsmod | grep hv
,查看是否有
hv_vmbus,hv_storvsc,hv_netvsc等模块加载,如果没有,可能需要重新安装内核模块或更新内核。
相关问题与解答
问题 1:为什么我的 Linux 虚拟机在 Hyper-V 中无法调整窗口大小或鼠标无法自由移动?
解答:
这通常是因为 增强会话模式(Enhanced Session Mode) 未正确配置或未安装必要的显示驱动。
- 检查 Hyper-V 设置:在 Hyper-V 管理器中,确保“启用增强会话模式”已开启(在 Hyper-V 设置中)。
- Linux 端配置:对于 Ubuntu,可能需要安装
xrdp或使用hvterm工具,对于其他发行版,确保安装了hyperv-daemons和相关的图形驱动。 - 连接方式:尝试在 Hyper-V 管理器中右键点击虚拟机,选择“连接”,然后查看是否弹出“增强会话”对话框,如果只有传统控制台,说明增强会话未激活。
问题 2:如何从宿主机(Windows)向 Linux 虚拟机传输文件?
解答:
有几种常用方法:
- SSH 文件传输(推荐):在 Windows 上使用
WinSCP或FileZilla,通过 SSH 协议连接到 Linux 虚拟机的 IP 地址,直接拖拽文件,这是最稳定且跨平台的方法。 - 共享文件夹:Hyper-V 对 Linux 的共享文件夹支持不如 Windows 对 Windows 那样无缝,你需要在 Linux 中挂载 SMB 共享,在 Windows 上创建一个共享文件夹,然后在 Linux 中使用
mount -t cifs //windows-ip/share /mnt/linux-mount-point -o username=your_user进行挂载。 - SCP 命令:在 Windows 的 PowerShell 或 CMD 中,直接使用
scp命令(如果安装了 OpenSSH 客户端):scp localfile.txt user@linux-ip:/home/user/。
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/488404.html