一开始尝试 kali 时,因为手上没有闲置的硬盘,也不想为了 win 和 linux 在一块硬盘上共存而迎接大量不可知的维护问题,故以硬盘安装方式安装进了一块 32G 的 U 盘。

livecd 方式无法保留更改,被我当做急救盘使用;persistence 模式下曾遇到一些看上去很离奇的问题,虽说都已一一解决,但是出现问题的原因和解决方案都需要大量的翻阅查询,远远超过了应有的学习成本。

第三方备份系统:Clonezilla(推荐)

先在已有的物理磁盘里完成一切软件 / 系统升级工作,并用 clonezilla 创建备份文件。然后可以直接使用已有的 clonezilla-live-2.6.6-15-amd64.iso 创建新虚拟机,并添加含有备份文件的客户机硬盘,进行还原。


2020-8-15 更新:

还原 kali 时,也可以创建虚拟机时选择空硬盘,然后配置虚拟机从 CD-ROM 启动 clonezilla 镜像

添加本机分区 / 移动硬盘分区失败(设备被占用),插入 U 盘并向 VM 挂载失败(clonezilla 报错,无分区)

将 U 盘插在另一台 PC 上,使用 SSH 远程连接方式,可用。

如果克隆后无法启动,需要在 livecd 终端输入 blkidls -l /dev/disk/by-uuid(通常后者比较有效),并将新的 UUID 写入 /etc/fstab和/boot/grub/grub.conf

在系统运行时创建镜像

目前而言,也可以使用 systemback 或 respin 封装成 ISO。

respin 不支持生成大于 4G 的 ISO,本轮出局。

systemback 生成大于 4G 的 ISO 可以通过使用 SystemBack 为 Debian / Ubuntu 创建系统备份下的解决 systemback 无法生成超过 4G 的 iso 的问题一文解决。

ISO 文件日后还能用 rufus 烧录成 livecd