银河麒麟怎么将现有物理机系统迁移成虚拟机镜像P2V

夏丽小哥_7047

夏丽小哥_7047

2026-10-25

397人浏览

原创

银河麒麟物理机p2v迁移需采用“备份→还原到虚拟机”两段式路径,核心是确保uefi启动结构、lvm/加密分区及国产固件驱动在虚拟环境可识别、可引导,否则易致黑屏或grub rescue。

银河麒麟怎么将现有物理机系统迁移成虚拟机镜像p2v

银河麒麟物理机系统迁移成虚拟机镜像(P2V)需绕过官方不直接支持P2V的限制,采用“备份→还原到虚拟机”两段式路径,核心在于确保UEFI启动结构、LVM/加密分区、国产固件驱动等关键要素在虚拟环境中可识别、可引导。这不是点几下就能完成的操作,稍有疏忽就会导致还原后黑屏或grub rescue。

第一步:用再生龙(Clonezilla)完整备份物理机系统

这一步必须在物理机上离线执行,不能在银河麒麟桌面环境下运行备份——否则无法捕获启动分区和LVM元数据。

将Ventoy制作好的U盘插入物理机→重启→反复按F12/F2/DEL(依主板品牌而定)进入启动菜单→选择「Clonezilla live (UEFI mode)」→等待加载完毕后,选「Start Clonezilla」→语言选「Chinese (zh_CN)」→键盘保持默认→选择「device-image」→选择「savedisk」→给本次备份起名,如kylin-p2v-20261001(【名称中严禁含空格或中文标点】)→确认目标位置为U盘根目录下的images文件夹→回车后会列出所有磁盘,【务必核对/dev/sda还是/dev/nvme0n1——看容量和型号,别选错系统盘!】→选中后按空格打钩→回车继续→选择「expert」模式→勾选「-k1」(保留分区表原始扇区)和「-j2」(启用多线程压缩)→最后确认执行备份。

备份过程耗时取决于硬盘大小和U盘写入速度,100GB SSD约需15分钟。完成后不要直接拔U盘,先选「poweroff」关机。

第二步:在虚拟机中创建匹配的磁盘结构

打开VMware Workstation或VirtualBox,新建虚拟机时注意三点:CPU必须勾选「虚拟化引擎」,内存不低于4GB,网络适配器选「Intel E1000E」(银河麒麟内核对vmxnet3支持不稳定)。

硬盘类型选「SCSI」(非SATA),控制器选「LSI Logic (Recommended)」——这是再生龙还原时能正确识别的关键前提;硬盘大小必须≥物理机系统分区总和,且不能启用「将虚拟磁盘拆分成多个文件」(否则Clonezilla无法写入)。

创建完成后,不要安装系统,直接关闭虚拟机设置窗口。接下来要手动编辑.vmx文件(VMware)或.ovf(VirtualBox),在末尾添加一行:firmware = "efi"。这一步漏掉,后续还原的系统将无法在UEFI虚拟机中启动。

第三步:用再生龙将备份还原进虚拟机

把刚才那支U盘插进宿主机→启动虚拟机→在BIOS启动项里强制选择「UEFI: Ventoy」→进入Clonezilla后,选「Start Clonezilla」→语言→键盘→选「device-image」→这次选「restoredisk」→找到U盘里的images/kylin-p2v-20261001目录→回车→它会列出源备份中的磁盘结构,此时【必须手动将目标磁盘指定为虚拟机里唯一的那块SCSI硬盘,通常是/dev/sda】→确认后选「beginner」模式→接受默认参数→开始还原。

还原完成后,虚拟机自动关机。此时不要急着启动——还需修复引导。

第四步:挂载并重装GRUB2至虚拟机EFI分区

方法一:用银河麒麟安装ISO启动虚拟机→选「试用银河麒麟」→打开终端→依次执行:

网易人工智能
网易人工智能

网易人工智能是一款围绕网易 AI 技术能力打造的智能应用与服务集合。

下载

sudo fdisk -l #确认EFI分区是/dev/sda1,系统根分区是/dev/sda2(若用LVM,根分区可能是/dev/mapper/kylin--vg-root)

sudo mount /dev/sda2 /mnt

sudo mount /dev/sda1 /mnt/boot/efi

sudo mount --bind /dev /mnt/dev && sudo mount --bind /proc /mnt/proc && sudo mount --bind /sys /mnt/sys

sudo chroot /mnt

grub2-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=kylin

update-grub2

exit && sudo reboot -f

方法二:若上述chroot失败(常见于加密LUKS分区),改用Live环境中的boot-repair工具:在试用桌面中打开「启动修复」应用→点击「推荐修复」→等待完成→重启。

启动后若卡在grub命令行,说明EFI变量未写入成功,需回到Live环境,用efibootmgr -v查看启动项,再用efibootmgr -c -d /dev/sda -p 1 -L "Kylin" -l "\EFI\kylin\grubx64.efi" 手动注册。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Gradle插件开发入门教程
Gradle插件开发入门教程

本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。

2026.10.22

20

11

Gradle Wrapper配置教程
Gradle Wrapper配置教程

本专题介绍Gradle Wrapper的基本作用,涵盖文件组成、生成方法、版本配置和任务调用,帮助你理解项目如何使用指定的Gradle版本,减少不同开发环境带来的构建差异。

2026.10.22

20

10

Golangci-lint检查器使用教程
Golangci-lint检查器使用教程

本专题整理Golangci-lint常用Linters的用途与配置方法,覆盖错误处理、无效代码、安全、复杂度、命名和依赖检查,帮助项目合理选规则。

2026.10.22

20

15

Gradle怎么构建Java项目
Gradle怎么构建Java项目

本专题介绍Gradle Java项目构建方法,涵盖Java插件配置、依赖声明、源码编译、测试执行和打包检查,帮助你理解各阶段的任务关系,逐步完成项目构建。

2026.10.22

0

10

PHP时间戳漏洞修复教程
PHP时间戳漏洞修复教程

本专题汇总PHP常见时间戳漏洞,包括2038年溢出、时区漂移、时间戳伪造、重放攻击、时间盲注与日志审计失效等,并给出升级64位环境、使用 DateTimeImmutable、统一UTC、严格超时校验、预处理绑定、hash_equals 比对等修复方案,帮助开发者快速排查和加固时间相关代码。

2026.10.22

20

25

Golangci-lint配置文件与规则设置
Golangci-lint配置文件与规则设置

本专题聚焦Golangci-lint YAML配置文件,讲清运行参数、规则启停、目录排除、问题过滤及严重级别设置,便于团队统一检查标准。

2026.10.22

20

15

Golangci-lint安装与入门教程
Golangci-lint安装与入门教程

本专题讲解Golangci-lint的安装、初始化、基础命令和首次代码检查,覆盖本地环境、Docker及多平台用法,帮助Go开发者快速上手。

2026.10.22

20

15

PHP2Shell高危漏洞修复教程
PHP2Shell高危漏洞修复教程

PHP2Shell漏洞是什么,哪些PHP版本和运行环境会受到影响,服务器应该如何检测与修复?本专题提供版本自查脚本、Linux与Docker升级命令、PHP-FPM和Apache排查步骤,以及修复验证、临时缓解和应急响应方案。

2026.10.22

100

12

剧云人物设定与关系管理教程
剧云人物设定与关系管理教程

本专题介绍剧云人物设定与关系管理,讲解角色小传、性格职业、人物目标、背景资料和关系网络的创建及维护方法。

2026.10.22

20

16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程