最近我开始萌生制作自己的定制 Debian live 发行版的想法。我的目标是拥有一个装有 Debian、特定软件包、自定义脚本和文件的 USB 记忆棒。通过这种方式,我可以带着我的操作系统和我需要使用的一切,而无需随身携带我的笔记本电脑。此外,如果我只想复制操作系统,而无需再次安装每个软件包和进一步自定义,那么它将特别有用。
所以我决定继续努力并在这个主题上进行自我教育。我已经找到了Linux from Scratch项目(LFS),但说实话,这会花费我很多时间,我目前无法投入(但认真思考未来)。
我决定根据其手册的说明和示例使用实时构建项目脚本。 http://live.debian.net/manual/3.x/html/live-manual.en.html
到目前为止,我已经通过在
hybrid.iso
中指定软件包来构建了一个 /config/packages-list/mylist.list.chroot
图像,其中包含自定义选择的软件包。
然后我尝试将自定义脚本、文件和软件复制到刚刚创建的 chroot 目录下的特定文件夹中,
即
mkdir chroot/etc/skel/<custom dir here>
或
cp <some file or script> chroot/usr/local/bin/
然后运行
lb build binary
问题是,第一次运行后,iso 没有构建
lb build
,并且每次我尝试再次构建时,在 chroot 目录上完成的自定义都会被删除。
我已经尝试过...
lb clean --binary
lb clean --stage
lb build binary
或
lb build binary iso
那么我错过了什么?如何将自定义文件、文件夹、脚本添加到我的自定义实时 Debian,而无需重新下载每个软件包?
为什么我第一次运行后没有再次构建iso镜像
lb build
?
提前致谢...
P.D:我决定写得非常详细,以便任何人都可以理解,特别是那些想尝试相同的人......
我也意识到LFS。但是,这个
我的目标是拥有一个包含 Debian、特定软件包、自定义的 USB 记忆棒 里面安装了脚本和文件。
还有这个
这将花费我很多时间,我目前无力投资
让我指出我的答案
我有两个建议。最简单的方法是使用 remastersys 或 live-magic 等工具。
最困难的是,请按照官方文档了解如何创建自定义 debian CD。
这个答案对于原始发布者来说晚了一年,但对于未来的搜索者来说:不要将文件直接添加到 chroot。相反,在
config/includes.chroot
中创建一个文件夹结构。然后,当您重建映像时,您的自定义设置将被保留。
请参阅 debian-live 手册中的“Live/chroot 本地包含”部分:http://live.debian.net/manual/4.x/html/live-manual.en.html#506
我在 Ubuntu 上做同样的事情时遇到了问题。 除非你使用 Debian 版本来实际构建东西,否则 live-build 就会被破坏。