摘要
使用clonezilla工具迁移安装到U盘中的ubuntu18.04系统到vmware虚拟机.
关键信息
- clonezilla
- ubuntu18.04
- cpu:x86_64
- vmware:17.6.0
- ubuntu引导方式:UEFI+GRUB2
- windows11
原理简介
clonezilla简介
[https://clonezilla.org/]
[https://linux.cn/article-3888-1.html]
- 再生龙
Clonezilla是一个用于Linux,Free-Net-OpenBSD,Mac OS X,Windows以及Minix的分区和磁盘克隆程序。它支持所有主要的文件系统,包括EXT,NTFS,FAT,XFS,JFS和Btrfs,LVM2,以及VMWare的企业集群文件系统VMFS3和VMFS5。Clonezilla支持32位和64位系统,同时支持旧版BIOS和UEFI BIOS,并且同时支持MBR和GPT分区表。它是一个用于完整备份Windows系统和所有安装于上的应用软件的好工具,而我喜欢用它来为Linux测试系统做备份,以便我可以在其上做疯狂的实验搞坏后,可以快速恢复它们。
Clonezilla也可以使用dd命令来备份不支持的文件系统,该命令可以复制块而非文件,因而不必在意文件系统。简单点说,就是Clonezilla可以复制任何东西。(关于块的快速说明:磁盘扇区是磁盘上最小的可编址存储单元,而块是由单个或者多个扇区组成的逻辑数据结构。)
grub2简介
[https://linux.cn/article-6892-1.html]
[https://www.gnu.org/software/grub/]
Grub 2 是一款精彩的功能强大的软件。它不是 bootloader 界的一枝独秀,但却最受欢迎,几乎所有主要的桌面发行版都在使用它。 Grub 的工作有两个。首先,它用一个菜单展示计算机上所有已经安装的操作系统供你选择。其次,当你从启动菜单中选择了一个 Linux 操作系统, Grub 便加载这个 Linux 的内核。
GNU GRUB is a Multiboot boot loader. It was derived from GRUB, the GRand Unified Bootloader, which was originally designed and implemented by Erich Stefan Boleyn.
Briefly, a boot loader is the first software program that runs when a computer starts. It is responsible for loading and transferring control to the operating system kernel software (such as the Hurd or Linux). The kernel, in turn, initializes the rest of the operating system (e.g. GNU).
uefi简介
[https://kontronn.com/post/hardware/introduction-to-uefi.html]
UEFI 是一种标准化的固件接口,用于在操作系统启动之前初始化和配置硬件。特点模块化设计:UEFI 采用模块化设计,每个模块负责特定的功能。
为了更好地理解UEFI,我们首先需要回顾一下历史。自20世纪80年代以来,计算机一直在使用BIOS。
当我们提到BIOS时,根据上下文的不同,它可能代表不同的含义:
BIOS标准:这是一个广泛的概念,指的是一种在计算机启动时初始化硬件并加载操作系统引导程序的标准接口。
具体的BIOS实现——即特定于主板的固件(“ASUS $motherboard_name BIOS”):
这是由主板制造商编写或授权的代码。
当计算机开机时,硬件被设置为开始执行BIOS。这是CPU需要知道的全部内容,即CPU不需要了解驱动器、文件系统或操作系统。BIOS负责初始化硬件,加载引导加载程序(如GRUB或Windows Boot Manager),然后引导加载程序负责加载并启动操作系统。
简而言之,BIOS是计算机启动过程中的一个重要环节,它负责在操作系统加载之前初始化硬件,并为操作系统的启动提供必要的环境。而UEFI(统一可扩展固件接口)是BIOS的现代替代品,提供了更多的功能和更好的安全性。
UEFI 代表统一可扩展固件接口(Unified Extensible Firmware Interface)。它与 BIOS 执行相同的任务,但有一个基本区别:它将所有关于初始化和启动的数据存储在 .efi 文件中,而不是存储在固件上。
这个 .efi 文件存储在硬盘上一个名为 EFI 系统分区(EFI System Partition, ESP)的特殊分区中。这个 ESP 分区还包含引导加载程序。
UEFI 被设计用来克服旧版 BIOS 的许多限制,包括:
UEFI 支持高达 9 泽它字节(Zettabytes)的驱动器大小,而 BIOS 仅支持 2.2 太字节(Terabytes)。
UEFI 提供更快的启动时间。
UEFI 具有独立的驱动程序支持,而 BIOS 的驱动程序支持存储在 ROM 中,因此更新 BIOS 固件有点困难。
UEFI 提供类似“安全启动”(Secure Boot)的安全功能,这可以防止计算机从未经授权/未签名的应用程序启动。这有助于防止 rootkit,但也会妨碍双系统启动,因为它将其他操作系统视为未签名的应用程序。目前,只有 Windows 和 Ubuntu 是已签名的操作系统(如果我有误,请告诉我)。
UEFI 以 32 位或 64 位模式运行,而 BIOS 以 16 位模式运行。因此,UEFI 能够提供图形用户界面(GUI, Graphical User Interface),允许使用鼠标进行导航,而 BIOS 仅允许使用键盘进行导航。
boot-repair简介
- boot-repair-cd版本
[https://sourceforge.net/projects/boot-repair-cd]
用U盘制作一个ubuntu启动盘
进入U盘的ubuntu,打开终端,添加boot-repair库:sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
下载并启动:sudo apt-get install -y boot-repair && boot-repair
然后会弹出一个小界面,点击第一行即“推荐修复”,等待完成重启即可
Boot-Repair-Disk, the 'must-have' rescue CD !
Here is THE Rescue Disk that you should keep close to your computer !
runs automatically Boot-Repair rescue tool at start-up
also contains the OS-Uninstaller and Boot-Info tools.
repairs recent (UEFI) computers as well as old PCs
HOW TO GET AND USE THE DISK:
(1) DOWNLOAD BOOT-REPAIR-DISK,
(2) Then burn it on a live-USB key via Rufus or Unetbootin. (do not burn it on CD/DVD if your PC came with Windows8/10)
(3) Insert the Boot-Repair-Disk and reboot the PC,
(4) Choose your language,
(5) Connect internet if possible
(6) Click "Recommended repair"
(7) Reboot the pc --> solves the majority of bootsector/GRUB/MBR problems
实现
[https://blog.51cto.com/u_16099265/10717173]
-
新建虚拟机
-
vmware设置为uefi启动:虚拟机设置->选项->高级->固件类型->uefi
-
添加ubuntu系统的u盘为虚拟硬盘,使用整个磁盘
-
添加clonezilla.iso为CD/DVD光盘
-
电源->从固件启动->进去虚拟BIOS->boot选项->更改启动顺序,从光盘优先启动
-
进去clonezilla,硬盘到硬盘,专家模式,
参数:-g,-e1,-e2,-j2,-r,-cmf,-v,-ps;
跳过检查与修正文件系统
使用来源的分区表
,正确选择源和目标磁盘,然后等待克隆完成,正常关闭虚拟机,修改启动顺序(移除iso防止再次进入再生龙),进入ubuntu,安装vmware-tools(可选)
效果
移动效果 |
---|