代码之家  ›  专栏  ›  技术社区  ›  Mike Heinz

构建自定义Linux Live CD

  •  23
  • Mike Heinz  · 技术社区  · 17 年前

    有人能给我一个关于从头开始创建可引导Linux CD的好教程吗?

    我需要帮助解决一个相当专业的问题:我的公司销售一种需要定制固件的扩展卡。目前,我们使用RH7.2的一个非常旧的实时CD映像,我们用当前的固件进行更新。制造部门将卡放入机器中,启动CD,CD写入固件,然后关闭电源并拔出卡。由于这个循环,CD必须尽快启动和关闭。

    问题是,对于下一代卡,我必须将CD更新到2.6内核。获取一张预先存在的live CD很容易,但这些都是为了在桌面上展示Linux而设计的,这意味着它们需要很长时间才能启动。

    有人能给我修一本最新的《How To》吗?


    更新:

    所以,作为稍后阅读本文的人的最后更新,我最终使用的工具是“livecd creator”。

    我选择这个工具的原因是,它适用于基于RedHat的发行版,如CentOs、Fedora和RHEL,这些都是我公司已经支持的发行版。此外,虽然该项目的文档记录非常糟糕,但它具有极高的可定制性。我能够创建一个最小的LiveCD并编辑引导序列,使其直接引导到固件更新程序中,而不是bash shell。

    如果有一个README解释配置文件,整个工作只需要一两个小时!

    6 回复  |  直到 5 年前
        1
  •  4
  •   Jörg W Mittag    17 年前

    你可以研究几个有趣的项目。

    但首先:它必须是CD-ROM吗?这可能是你能使用的最慢的存储(好吧,也许除了磁带)。快速U盘、IEE1394硬盘,甚至eSATA硬盘呢?

    好的,有几种Live CD被设计得非常小,例如可以放在名片大小的CD上。有些还被设计成从USB记忆棒启动,当时这意味着64-128MiByte: Damn Small Linux 是最著名的内核之一,但它使用2.4内核。有一个姊妹项目叫做 Damn Small Linux - Not ,它有一个2.6内核(尽管它似乎已经多年没有更新了)。

    另一个值得注意的项目是 grml ,用于系统管理任务的Live CD。它不会启动到图形环境中,因此速度很快;然而,它仍然包含压缩到CD-ROM上的约2吉字节的软件。但它也有一个较小的版本,名字很恰当 grml-small ,它只包含压缩为60 MiByte的约200 MiByte软件。

    然后是 Morphix ,这是一个基于 Knoppix 。(“可变形Knoppix”!)Morphix基本上是一个构建自己的专用Live CD的工具。

    我最后想说的是 MachBoot .MachBoot是一个超快速的Live CD。它使用各种技术来大大加快引导过程。我相信他们甚至会追踪在启动过程中访问块的顺序,然后重新制作ISO,以便这些块在介质上连续排列。他们目前的记录是,启动到完整的图形桌面环境不到6秒。然而,这似乎也过时了。

        2
  •  3
  •   Joshdan    17 年前

    我可以给出的一个关键建议是,大多数LiveCD使用名为squashfs的压缩文件系统在CD上尽可能多地填充数据。由于不需要压缩,您可以使用-noDataCompression和-noFragmentCompression运行mksquashfs步骤(大多数教程中都有)以节省解压缩时间。你甚至可以完全放弃squashfs方法,但这需要一些重组。这实际上可能会慢一些,具体取决于你的CD-ROM读取速度与CPU速度,但值得研究。

    Ubuntu tutorial 对我来说足够有效,可以构建一个基于8.04的LiveCD。它可能有助于了解LiveCD是如何组成的,但我可能会 建议使用Ubuntu LiveCD。

    如果可能的话,找到一个最小的LiveCD,只需最小的剥离即可构建,而不是像Ubuntu那样剥离一个巨大的LiveCD。在某些情况下,较小的发行版使用的是更小/更快的版本 可供选择的事物 而不是仅仅遗漏一些东西。如果你想成为真正的铁杆,你可以看看 Linux From Scratch ,并包括 你想要什么,但这可能比你想花的时间多。

        4
  •  1
  •   Misha M    17 年前

    这取决于你的发行版。这是一篇你可以查看的好文章 LWN.net

    我使用的一本书涵盖了很多发行版,尽管它没有涵盖创建闪存可引导映像。这本书是 Live Linux(R) CDs: Building and Customizing Bootables 。您可以将其与所选发行版的补充信息一起使用。

        5
  •  1
  •   Mike Heinz    17 年前

    所以,作为稍后阅读本文的人的最后更新,我最终使用的工具是“livecd creator”。

    我选择这个工具的原因是,它适用于基于RedHat的发行版,如CentOs、Fedora和RHEL,这些都是我公司已经支持的发行版。此外,虽然该项目的文档记录非常糟糕,但它具有极高的可定制性。我能够创建一个最小的LiveCD并编辑引导序列,使其直接引导到固件更新程序中,而不是bash shell。

    如果有一个README解释配置文件,整个工作只需要一两个小时!

        6
  •  1
  •   hendry    16 年前

    Debian Live 提供了构建Linux Live CD的最佳工具。 Webconverger 以Debian Live为例。

    它很容易使用。

    sudo apt-get安装 live-helper #来自Debian unstable,它应该在Ubuntu上运行良好

    lh_config#根据您的喜好编辑配置/*

    sudo lh_build