Debian live-build在首次运行后不会生成binary-hybrid.iso


3

我的电脑:

  • Debian Squeeze amd64
  • live-build 包是版本2.0.12-2(最新的Squeeze)

我正在尝试使用一些自定义文件和诸如此类的东西来构建Debian Live CD。这是我做的:

$ mkdir debianlive
$ cd debianlive
$ lb config
[output omitted]
# lb build
[output omitted]
$ ls -AF
auto/    cache/   config/  binary-hybrid.iso  binary.packages
binary/  chroot/  .stage/  binary.list

但是,然后,比方说,我添加了一些东西到config / chroot_local-includes /,我想重建iso。所以我跑了 # lb build 再次,这一次,它跳过了更新 binary-hybrid.iso。具体来说,它输出

 [...]
 P: Begin building binary iso image...
 W: skipping binary_iso
 [...]

那么是否有任何快速简便的方法来获得重建iso的实时构建?我错过了一些明显的东西吗

我试过的事情:

  • 删除 binary-hybrid.iso 并希望live-build重新创建它。是否 工作。
  • 删除 .stage 目录。这个 作品 ,但它不是最佳的 # lb build 然后,配置阶段必须重新提取并重新安装每个单个包。
  • 使用Sid的live-build版本3.0~a45-1。与2.0.12-2大致相同。是否 解决我的问题。
  • $ sudo lb binary iso,因为该联机帮助页声称这是构建iso的具体步骤。是否 工作。

我建议您在Debian Unstable中尝试使用该版本(当然是在chroot / VM中)并查看是否可以重现此行为。如果是这样,请将此文件作为错误提交。另一种选择是在开发邮件列表上询问。
Tshepang

@Tshepang会这样做。我只是希望这是一个简单的修复(显然它不是)。
Dr Kitty

@Tshepang我成功地设置了一个chroot,安装了live-build版本3.0~a45-1,然后让它构建了一个iso 第一 时间,并且在VM中启动了iso。同样的问题,虽然 - live-build在任何情况下都不会修改或重新创建iso,除非我删除了 .stage 目录或完全重新开始。
Dr Kitty

我将发布每一步的输出。也许这会有所帮助。
Dr Kitty

第二个想法,不,我不是。我会想出一些其他方法来制作livecd。
Dr Kitty

Answers:


2

确保你设置 BINARY_IMAGES=iso-hybrid。默认情况下(至少在Ubuntu中) lb 不生成ISO,只生成squashfs和bootloader。


1

我遇到过同样的问题。然后我想起我本应该用的 lb 干净的 --binary 选项。我将自动目录重命名为_auto以避免其中的脚本片刻。否则它运行默认的lb clean,删除整个chroot目录。

然后我以root身份运行以下命令:

chroot ./chroot
apt-get install packages_that_i_want_to_add
exit
lb clean --binary (this removes the previous iso or img image but keeps chroot dir)
lb build ( first rename your _auto directory to auto, if you have any.)

此外,如果您在访问期间无法访问互联网 chroot apt-get,替换你的 /etc/resolv.conf 与主Linux中的那个。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.