`
wx1569020408
  • 浏览: 26872 次
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

centos7从Hyper-V的一代虚拟机迁移到二代虚拟机

 
阅读更多

CentOS官网上下载的GenericCloud镜像是VHD格式,MBR分区,只能挂着Hyper-V的一代虚拟机上。Hyper-V二代虚拟机使用VHDX格式,使用UEFI启动。迁移到二代机,主要是修改磁盘格式,转为GPT分区和激活UEFI启动系统

  1. 首先修改磁盘格式为VHDX

    • 使用Hyper-V管理器,编辑磁盘,把CentOS-7-x86_64-GenericCloud.vhd转换成CentOS-7-x86_64-GenericCloud.vhdx
    • 因为GPT启动要建立ESP分区,所以需要扩大磁盘(centos使用xfs文件系统,gparted不支持缩小xfs分区。)。仍使用Hyper-V管理器,编辑磁盘,扩展,最少增加1G。那就增加2G吧,多点空间随便做个交换分区。
  2. 使用Hyper-V建立2代虚拟机。添加上一步建立的vhdx磁盘,添加光驱。注意在“设置->固件”中把安全启动去掉,并在启动顺序把光盘启动提前。

  3. 转MBR分区为GPT分区

    对系统所在的磁盘做分区操作需要救急光盘。hyper-v二代虚拟机,只在UEFI上启动,所以要使用支持UEFI启动的救急光盘。gparted-live-0.31.0-1-amd64.iso ,在移动磁盘分区的时候闪退。后来用super_grub2_disk制作的救急光盘 rescatux-0.51b3.iso ,可以工作。

    说实话被linux下名目繁多的分区工具闪花了眼。总结如下:

    • gparted GNOME的图形化分区工具,支持GPT和MBR。支持无损移动/修改分区大小(视文件系统)
    • fdisk 传统的分区工具,早期版本不支持GPT,现已支持MBR和GPT。支持交互式操作。
    • gdisk 对应fdisk的GPT分区工具。支持交互操作模式。特色功能是无损转MBR到GPT分区,还能建立混合GPT/MBR

    首先,使用gparted移动和扩展已有的数据分区,这样新建的分区可以放到前面。当然也可以直接在原分区的末尾添加一个UEFI的启动ESP分区,但以后想扩展分区容量时,附在分区末尾的疤一样的存在就很讨厌了。

    centos7使用xfs文件系统,gparted只能扩大和移动,不能缩小。移动原数据分区到末尾,注意末尾留下1M的空间。因为GPT会在磁盘末尾33个扇区备份分区表,留1M空间是为保持1M对齐。磁盘前面,留下1G+10M左右空间,其中1G做swap分区,零头10M左右为UEFI的启动分区,ESP分区。

    其次,使用gdisk把MBR格式转成GPT格式。转格式方法很简单,sudo gdisk /dev/sda 打开硬盘设备后,直接 w,写入硬盘就可以了。当然,gdisk在GPT分区上还是有特色的,我们继续用它创建好分区。在交互模式下,先建立swap分区(分区类型8200)和ESP分区(分区类型EF00),然后记得按 s 对分区表重新排序。

最后,为ESP分区建立文件系统,假设排过序后,ESP分区在第一个分区::

sudo mkfs -t vfat /dev/sda1

ESP分区上要有FAT的文件系统。否则在后面的步骤时会无法启动系统。

  1. 激活centos的UEFI启动

    使用super grub2 disk的另一个工具光盘,super_grub2_disk_hybrid_2.02s10-beta5.iso ,别费力用刚才的 rescatux-0.51b3.iso 光盘里的easy gnu/linux boot fix功能,在这里没用。super_grub2_disk_hybrid_2.02s10-beta5.iso,是个启动工具,帮助启动受损的系统,通过它启动进入系统。

    使用 super_grub2_disk_hybrid_2.02s10-beta5.iso 启动系统,检测到虚拟机上已存在的centos7后,选择并进入。然后安装grub的EFI启动器。

    • 修改/etc/fstab。先使用 sudo blkid 查看各分区id及文件系统。然后修改/etc/fstab,把ESP分区和swap分区加上,ESP分区挂载/boot/efi目录。

    • sudo mount -a 重新挂载文件系统

    • 安装grub的EFI启动器::

      sudo yum install grub2-efi-x64-modules
      sudo yum install efibootmgr
      sudo grub2-install --target x86_64-efi --bootloader-id=centos /dev/sda
      sudo grub2-mkconfig -o /boot/grub2/grub.cfg
      

OK. 移除光盘,重新启动系统。正常进入centos7。

转载于:https://my.oschina.net/u/947271/blog/1836973

分享到:
评论

相关推荐

    Hyper_V给虚拟机换磁盘_centos_1.11

    本文将详细解析如何在Hyper-V环境下,针对运行CentOS 7的虚拟机进行磁盘更换的操作过程,以满足服务器存储需求的变化。 首先,我们要了解为什么要更换虚拟机磁盘。在案例中,一台运行CentOS 7的web服务器初始配置了...

    Hyper-v集成管理服务 Centos版

    Hyper-V 角色可让你利用...所需的组件包括 Windows 虚拟机监控程序、Hyper-V 虚拟机管理服务、虚拟化 WMI 提供程序及其他虚拟化组件,如虚拟机总线 (VMbus)、虚拟化服务提供程序 (VSP) 和虚拟基础结构驱动程序 (VID)。

    使用Hyper-V Server创建Linux虚拟机

    ### 使用Hyper-V Server创建Linux虚拟机的关键知识点 #### 一、Hyper-V Server与Linux虚拟机的结合 **Hyper-V Server** 是一款免费的虚拟化平台,由微软开发,旨在为用户提供高效、灵活的虚拟化解决方案。它允许...

    1-Hyper-V虚拟机安装CentOS71

    在Hyper-V管理器中选择“新建”->“虚拟机”,填写必要的信息,如虚拟机名称(例如:centos-master),指定存储位置(例如:E:\Hyper-V\)并连接到之前创建的虚拟交换机(centos-net)。设置虚拟硬盘大小,这里建议...

    浅析Hyper-V安装CentOS 8问题

    CentOS 8 已经发布很长时间了,作为一直折腾Linux虚拟机的一员怎么少的了我。 环境&准备工作 系统:Win 10 pro 19H1 虚拟机:Hyper-V ISO:CentOS 8 问题 Hyper-V安装Cent OS 8选择 Server with GUI 开机之后...

    在Hyper-V下安装CentOS Linux系统的网卡驱动.docx

    本文档介绍了在Hyper-V虚拟机中安装CentOS Linux系统的网卡驱动的步骤。 Hyper-V是微软公司开发的一款虚拟机软件,允许用户在Windows操作系统中创建虚拟机。 CentOS Linux是一个流行的开源操作系统,可以在Hyper-V...

    CentOS-7-i386-Minimal-2009.iso

    CentOS 7.9版本(CentOS-7-i386-NetInstall-2009)适用于i386 CentOS是免费的、开源的、可以重新分发的开源操作系统,CentOS(Community Enterprise Operating System,中文意思是社区企业操作系统)是Linux发行版...

    (CentOS7镜像)CentOS-7-x86-64-Minimal-2009.rar

    【标题】"(CentOS7镜像)CentOS-7-x86-64-Minimal-2009.rar" 提供的是一个基于Linux发行版的CentOS 7的最小化安装镜像,适用于创建虚拟机环境。这个版本特别针对系统管理员和开发者设计,包含了运行操作系统最基本...

    启用 Hyper-V 以在 Windows 10 上创建虚拟机

    ### 启用 Hyper-V 以在 Windows 10 上创建虚拟机 #### 一、Hyper-V 简介 Hyper-V 是微软推出的一款强大的虚拟化技术,它允许用户在 Windows 10 操作系统上创建和运行多个独立的虚拟机(VMs),每个虚拟机都拥有...

    CentOS-7-x86_64-DVD-2003镜像文件

    # CentOS-7-x86_64-DVD-1810.iso CentOS 7.6 DVD 版 4G http://mirrors.163.com/centos/7.6.1810/isos/x86_64/CentOS-7-x86_64-DVD-1810.iso # CentOS-7-x86_64-Everything-1810.iso CentOS 7.6 Everything版 10G ...

    CentOS-7-aarch64-NetInstall-2009.iso

    CentOS是免费的、开源的、可以重新分发的开源操作系统,CentOS(Community Enterprise Operating System,中文意思是社区企业操作系统)是Linux发行版之一。...CentOS-7-aarch64-NetInstall-2009适用于ARM64 (aarch64)

    Centos7镜像-百度网盘下载链接

    CentOS-7.2-x86_64-DVD-1511 CentOS-7.3-x86_64-DVD-1611 CentOS-7.4-x86_64-DVD-1708 CentOS-7.5-x86_64-DVD-1804 CentOS-7.6-aarch64-Everything-1810 CentOS-7.6-x86_64-DVD-1810 CentOS-7.7-x86_64-DVD-1908 ...

    Centos7.6镜像文件:CentOS-7-x86-64-DVD-1810.iso

    标题中提到的“Centos7.6镜像文件:CentOS-7-x86_64-DVD-1810.iso”,首先需要明确几个关键词。CentOS 是一个企业级 Linux 发行版,它是基于 Red Hat Enterprise Linux (RHEL) 源代码编译而成的。CentOS 7.6 指的是 ...

    CentOS-7-x86-64-Minimal-2207-02.iso

    标题中的"CentOS-7-x86_64-Minimal-2207-02.iso"是指一个 CentOS 操作系统的最小化安装镜像文件,适用于 x86_64(即64位)架构的系统。"2207-02"可能代表发布日期或版本号,表示这是2022年7月的第二个版本。这个ISO...

    CentOS-7-x86_64虚拟机映像

    CentOS-7-x86_64-DVD-2009 是一个基于 Red Hat Enterprise Linux (RHEL) 7 的免费操作系统版本,适用于 x86_64 架构的计算机。该版本主要用于学习云计算技术以及作为 Linux 操作系统的入门级学习工具。 #### 发行...

    Windows Server 上的 Hyper-V开发文档.pdf

    Hyper-V支持多种Windows来宾操作系统,如Windows Server 2016、2019等,同时也支持多种Linux发行版,如CentOS、Red Hat Enterprise Linux、Debian、Oracle Linux、SUSE和Ubuntu,以及FreeBSD。 **最佳实践** 运行...

Global site tag (gtag.js) - Google Analytics