创建系统的可启动映像的正确方法是什么?

创建系统的可启动映像的正确方法是什么?

如果我可以在安装后立即设置我的系统,并包含我想要的所有主题、程序和 SDK,然后就可以了,那不是很好吗?节省那个快照?就像备份一样,除了我能够启动该映像并安装它在我想要的任何机器上?

我很确定这是可能的。事实上,我知道它是在某种程度上

https://help.ubuntu.com/community/LiveCDCustomizationFromScratch

但还有更好的办法吗?有人知道我可以使用魔法吗?难道我不能保存我的系统状态,这样当我安装一些不受支持的服务器软件并且我的系统变砖时,我不需要再花一个小时进行设置吗?

答案1

我都用克隆齐拉时光倒流分别进行系统备份和数据备份。

CloneZilla 相对于内置工具的优势dd在于,它使用自己的partclone工具创建非常小的图像(它识别稀疏文件,可以使用许多压缩实用程序,...)并回退到ddrescue允许读取损坏的硬盘驱动器! (很高兴有这个最后在硬盘最终完全放弃之前进行备份。)

但是,如果您想轻松区分操作系统和用户配置文件,您应该(至少)有一个单独的/和。/home

没有什么与 CloneZilla 一样灵活、强大和快速,可以进行完整的离线映像/磁盘备份(如果有人提到它最喜欢的备份工具,我总是阅读备份手册,看看他们是否有更好的东西那么我就有了)

如果您将 CloneZilla 放在外部 USB HDD 的 512 MB 可启动分区上,您可以在任何计算机上启动它,并恢复您对分区所做的任何备份,占用同一 HDD 的其余部分。

警告:如果您将相同的系统备份恢复到多台计算机,所有这些计算机都将成为彼此的克隆,具有相同的主机名、时区、IP(如果是静态的)......因此所有这些都需要在“恢复”后进行个性化...

或者,我有一个可启动的USB SLC完整安装了 Linux(在我的例子中为 lubuntu),没有任何专有驱动程序和一个领先的 FAT 分区,没有交换分区,但分区内有一个交换文件,/我可以在任何机器上启动(到目前为止),并且我用它来对Windows机器进行消毒(或者如果他们偏执的话,就在别人的机器上工作而不接触他们的数据)。

答案2

是的,有办法。机器甚至不需要总是相同,因为 Linux在内核启动时动态创建/dev/proc和文件系统,这给了您很大的自由来进行一些相当彻底的硬件更改。/sys

假设您的操作系统安装在磁盘上/dev/sda。您可以使用以下命令制作 ISO/dev/sda及其所有分区(无论它们是什么):

dd if=/dev/sda of=/path/to/image.iso

这样做的缺点是,图像将是您指定为if(输入文件)的磁盘的完整大小,即使该磁盘未满。

如果您想直接从 克隆磁盘/dev/sda,只需插入另一个磁盘并使用如下命令:

dd if=/dev/sda of=/dev/sdb

答案3

您可能想研究一下squashfs。这是“实时”版本通常使用的内容,您可以逐个目录地将其“解压缩”到您喜欢的任何分区。如果您愿意,它是可编写脚本的、可扩展的,并且可以从列表文件中获取命令参数。就像一个 zip 文件,实际上作为静态文件系统运行,无需完全提取。当然,它也有其局限性,但只要稍加努力,它就能让您以比 Clonezilla 更细粒度、比 dd 更聪明的方式做您想做的事情。 Linux 论坛将提供有关创建您自己的实时映像的内容。

答案4

如果机器始终相同,那么在这种情况下使用 dd 可能会派上用场。

相关内容