我正在寻找一种方法,把我目前的Ubuntu 22.04.1 LTS系统,并提取以下内容:
- 已安装的程序和包
- 设置
- 程序设定
- 启动应用程序中保存的任何内容,例如用于修复某些问题的脚本,这些脚本会在启动时运行
- 用户帐户及其各自的设置、名称等。
然后我想把所有这些粉碎在一起建立终极 UBUNTU 配置。接下来,我计划将所有数据都放入 ISO 文件中,然后将其刻录到 USB 记忆棒中,这样就很好了。
因此,每当我需要安装操作系统时,我都可以拿出我的终极 UBUNTU 配置 ISO USB 棒, 进而繁荣。我一切顺利,我可以将 Ubuntu 安装到任何地方,无需更改,一切都很完美,拔下 USB 记忆棒并继续让世界变得更美好。
有没有专业、正确、最好的方法来做到这一点?提前谢谢!
答案1
创建自定义 Ubuntu 系统以供复制
1)从现有操作系统创建映像文件:
启动 Live Ubuntu USB 并插入要复制的完整安装(或持久)USB。
使用 Gnome-Disks 创建完整安装 USB(或持久 USB)的映像文件。
2) 如果使用虚拟机安装:将.vdi
文件转换.img
为可以刷入可启动 USB 的文件。(可选)
打开 VirtualBox
cd 到包含 ubuntu.vdi 的文件夹并运行:
VBoxManage clonemedium --format RAW ubuntu.vdi ubuntu.img
3)安装镜像文件到目标驱动器
警告:目标驱动器将被覆盖。
- 当您想要将映像恢复或克隆到另一个驱动器、USB、SSD 或 HDD 时,请使用磁盘中的煎饼图标或使用 Etcher、Rufus、dd 或 mkusb。
更多信息请参阅: https://askubuntu.com/a/1300542/43926 和如何逐步将 Ubuntu 22.04 完整安装到 USB 设备
答案2
有三种方法(我知道的,可能还有更多方法)可以克隆安装(制作其映像)。这些方法不是克隆大型驱动器的完美方法。我使用第三种方法,使用 128 GB 磁盘。这在同一台机器上可以正常工作,但如果您将其克隆到另一台机器上,它可能无法工作,或者您需要配置启动分区才能与该机器一起使用。
Gparted/Clonezilla 方法
Gparted 与 Ubuntu ISO 一起提供,您可以在实时 USB 期间使用它。克隆兹拉是一个单独的 ISO,也可以克隆 HDD/SSD。
使用这种方法,您至少需要 3 个存储设备。
- 你的主要驱动器,你将在此驱动器中进行所有设置
- 您的实时 USB,您将使用它将第一个驱动器克隆到第三个驱动器
- 您的备份驱动器,您将把所有内容克隆到此驱动器中。您需要将其保持离线状态。这必须等于或大于第一个驱动器
脚步
- 将 Ubuntu 安装到第一个驱动器,进行必要的添加并根据需要进行设置
- 关闭系统,现在从第二个驱动器启动,连接第三个驱动器
- 打开 Gparted/Clonezilla 并将每个分区(按相同顺序)从第一个驱动器克隆到第三个驱动器。(您可以调整这些分区的大小,但很可能会损坏您的分区)
- 克隆完成后,弹出第三个驱动器并将其保存在安全的地方。
使用第三个驱动器中的克隆,您可以将其从第三个驱动器重新克隆到第一个驱动器,然后使用已保存的配置重新启动。
Gunzip 方法
使用此方法,您将主驱动器压缩为一个.img.gz
文件。压缩后,文件将更易于存储。
使用这种方法,您至少需要 3 个存储设备。
- 你的主要驱动器,你将在此驱动器中进行所有设置
- 您的实时 USB,您将使用它来创建第三个驱动器的映像。这可以是任何 Linux 发行版,唯一的要求是
gunzip, dd, and necessary packages to read the file systems
- 您的备份驱动器,您将在此设备中存储映像。由于此方法压缩磁盘,因此它可能比第一个驱动器小。生成的文件大小取决于使用的存储空间。(我已将 128 GB 磁盘压缩为 14 GB 文件)
脚步
- 将 Ubuntu 安装到第一个驱动器,进行必要的添加并根据需要进行设置
- 关闭系统,现在从第二个驱动器启动
- 确定主驱动器的字母(
/dev/sdX
,X 是您确定的字母),您可以使用Gnome disks(gnome-disk-utility)
,,lsblk
... - 连接您的第三个驱动器,确定其安装位置。
- 跑步
sudo dd if=/dev/sdX conv=syns,noerror bs=64k| gunzip -c > /path/to/third/drive/YOUR_BACKUP_NAME.img.gz
- 克隆完成后,弹出第三个驱动器并将文件存储在安全的地方。
重新安装
- 从第二个驱动器(live USB)启动,连接包含映像文件的第三个驱动器
- 确定主驱动器的盘符
- 运行(以 root 身份)
gunzip -c /path/to/backup/YOUR_BACKUP_NAME.img.gz | dd of=/dev/sdX bs=64k
,。
Gunzip + Ventoy 方法
此方法与第二种方法类似,但利用文图伊的执着的实时 USB 可消除对第三个驱动器的需求。
你至少需要 2 个存储设备
- 你的主要驱动器,你将在此驱动器中进行所有设置
- 您的实时 USB + 临时存储,您将用此进行克隆,并存储在此驱动器中。由于这将存储相当多的内容,我建议至少为此驱动器设置 64 GB。
脚步
- 将 Ubuntu 安装到第一个驱动器,进行必要的添加并根据需要进行设置
- 创建一个 ventoy 磁盘,并为你想要的 Linux 发行版设置持久存储(我不会详细介绍这一点,请遵循 ventoy 网站上的文档)
- 从您的 ventoy 驱动器启动到具有持久存储的实时 USB。确定您的持久存储的安装位置。
- 跑步
sudo dd if=/dev/sdX conv=syns,noerror bs=64k| gunzip -c > /path/to/third/drive/YOUR_BACKUP_NAME.img.gz
- 克隆完成后,关闭计算机并将文件存储在安全的地方。
重新安装
- 从具有持久存储的第二个驱动器(live USB)启动
- 确定主驱动器的盘符
- 运行(以 root 身份)
gunzip -c /path/to/backup/YOUR_BACKUP_NAME.img.gz | dd of=/dev/sdX bs=64k
,。
结论
所有这些方法至少需要一个小时,具体取决于您的设置、驱动器速度和使用的存储空间。您可以使用第二台计算机复制 gunzip 方法,但我假设您只有一台计算机 + sata/nvme 到 usb 3.0 适配器通常比在计算机上使用它慢。