Clonezilla Live 在硬盘上安装
配合 linux 操作系统
在本文档中,我们将解释如何将 clonezilla 放在已经安装了操作系统的硬盘中。
这里我们以 grub 引导加载程序为例。您必须将 clonezilla live 文件放在 FAT、ext2/3、reiserfs 或任何支持 grub 的分区中。
如果你没有这样的分区,你可以使用 gparted 来调整你的分区大小,并创建另一个分区来放置 clonezilla live。在这里,我们假设你已经有一个 FAT 分区 /dev/sda4 来放置 clonezilla live。下面介绍如何操作:
在硬盘中启动操作系统,启动的是 GNU/Linux。
将 /dev/sda4 挂载为 /mnt,可以通过以下方式进行:
mount /dev/sda4 /mnt
下载 clonezilla live zip 文件,并将所有文件解压缩到 /mnt 中,确保将所有文件都放在 /mnt 中,比如说,“GPL”在 /mnt/ 中,而不是在任何子目录中。你可以这样做:
unzip clonezilla-live-*.zip -d /mnt
(将clonezilla-live-*.zip 替换为你刚刚下载的文件名)。将 /mnt 下的目录名称“live”更改为另一个名称,例如“live-hd”。你可以通过以下方式制作:
cd /mnt; mv live live-hd
如果你的 grub 是 2.x (grub-pc),例如在 Debian Buster 或 Ubuntu 20.04 上,请编辑 /etc/grub.d/40_custom,让它像这样:
menuentry "Clonezilla" { set root=(hd0,4) linux /live-hd/vmlinuz boot=live union=overlay username=user config components quiet noswap nolocales edd=on nomodeset ocs_live_run=\"ocs-live-general\" ocs_live_extra_param=\"\" keyboard-layouts= ocs_live_batch=\"no\" locales= vga=788 ip=frommedia nosplash live-media-path=/live-hd bootfrom=/dev/sda4 toram=live-hd,syslinux,EFI initrd /live-hd/initrd.img }
//注意//
- 在 grub2 中,(hd0,4) 表示第一个硬盘和第 4 个分区。它与 grub 版本 1 中的不同。然后运行“update-grub2”来更新你的 grub2 配置。(感谢 Louie Chen 提供此内容)。
- 记得在 grub 2 中的引导参数之前加上斜杠 \ 。否则它不会显示在 /proc/cmdline 中,那么 Clonezilla 的某些操作将不起作用。
此外,从 Clonezilla live >= 2.6.2-15 开始,您只能在 grub2 中使用 Clonezilal live iso 文件。感谢菲尔·韦伯斯特(Phil Webster)的提示:
首先,下载Clonezilla live iso,例如 clonezilla-live-2.7.2-39-amd64.iso。然后把它放在操作系统的分区中,比如 /dev/sda2,它可能被挂载为 /boot。然后使 grub2 自定义菜单 (/etc/grub.d/40_custom) 如下所示:
menuentry "clonezilla-live" {
ISO="/clonezilla-live-2.7.2-39-amd64.iso"
search --set -f $ISO
loopback loop $ISO
linux (loop)/live/vmlinuz boot=live union=overlay username=user config components quiet noswap edd=on nomodeset locales= keyboard-layouts= ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_batch="no" vga=791 ip= net.ifnames=0 splash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 findiso=$ISO
initrd (loop)/live/initrd.img
}
对于上面的 grub 配置文件,当您的操作系统是 uEFI 启动时,请将 “linux” 更改为 “linuxefi”,将 “initrd” 更改为 “initrdefi”。
然后运行“update-grub2”来更新你的 grub2 配置。
对于 CentOS/Fedora/Redhat 之类的系统,命令类似于:grub2-mkconfig -o $(readlink -e /etc/grub2.cfg)
或 grub2-mkconfig -o $(readlink -e /etc/grub2-efi.cfg)
根据配置文件的路径来更新 grub2
如果您的 grub 是 1.x 版本,请编辑 grub 配置文件 /boot/grub/menu.lst,并附加以下内容:
title Clonezilla live on harddrive root (hd0,3) kernel /live-hd/vmlinuz boot=live union=overlay username=user config components quiet noswap nolocales edd=on nomodeset ocs_live_run="ocs-live-general" ocs_live_extra_param="" keyboard-layouts= ocs_live_batch="no" locales= vga=788 ip=frommedia nosplash live-media-path=/live-hd bootfrom=/dev/sda4 toram=live-hd,syslinux,EFI initrd /live-hd/initrd.img boot
注意 // grub 1 的引导参数有长度限制(例如 256 个字符)。有关更多信息,请查看 此讨论.。
// 注意//:
- 在这里,我们分配“live-media-path=/live-hd”,因为文件没有放在默认路径(live)中。我们强制使用“bootfrom=/dev/sda4”(文件在 /dev/sda4 上),这样如果您的 CD 驱动器上有另一个 Clonezilla live(例如 /dev/hdc),live initramfs 不会从您的 CD 驱动器中找到错误的文件。添加了一个额外的参数 “toram=live-hd,syslinux,EFI”,以便稍后您可以根据需要将 /dev/sda4 挂载为 clonezilla 映像目录。如果你想让 live-initramfs 将 /dev/sda4 中的所有文件复制到内存中,你可以只使用 “toram”(而不是 “toram=live-hd,syslinux,EFI”)。当您在 /dev/sda4/ 中有一些需要的自定义文件时,这很有用。
- 请记住从 zip 文件中检查内核和 initrd 文件名以及 syslinux/syslinux.cfg 中的参数,将它们复制到此处。它可能与这里不同,比如 vmlinuz 路径、用户名和主机名可能不同。
- 如果您没有在上面将目录名称从“live”更改为“live-hd”,则当您在硬盘上有 Clonezilla live 版本并且想要启动 Clonezilla live CD 或 USB 闪存驱动器时,可能会遇到问题。对此有一些讨论。检查: