如何向 debootstrap 添加更多变体或自定义包?

如何向 debootstrap 添加更多变体或自定义包?

我有一组软件包,希望与 debootstrap 中的 minibase 变体一起安装。我很难弄清楚如何自定义变体,以便在运行 debootstrap 时在 chroot 中安装的不仅仅是基础。有什么方法可以实现吗?

答案1

使用额外的自定义包添加自己的变体非常容易解引导

解引导配置/运行时脚本位于/usr/share/debootstrap/scripts。让我们创建一个allmybase包含 中的所有内容minbase以及包htop和 的变体traceroute

  1. /usr/share/debootstrap/scripts/precise在编辑器中打开。

    • 请注意,这与许多 Ubuntu 版本一样,是指向 的符号链接/usr/share/debootstrap/scripts/gutsy;如果您只想影响特定版本,请断开链接并将其作为勇敢脚本。
  2. 在第 22 行左右,找到以 开头的行variants并在末尾添加您的自定义变体:

    变体 - buildd fakechroot minbase全部我的数据库
    
  3. 找到work_out_debs()第 34 行附近的函数,并查看base“基本”变体的变量的默认设置(此处为minbase):

        elif doing_variant fakechroot || doing_variant minbase; 然后
                基础=“apt”
    
  4. 在函数末尾附加带有自定义包的变体:

        elif doing_variant allmybase; 然后
                base="apt htop traceroute"
    
  5. 保存、退出,并使用“模拟”标志进行测试--print-debs,例如

    sudo debootstrap --print-debs --variant=allmybase precise /tmp/prec-chroot
    
    • 在此示例中,输出将显示htoptraceroute包将包含在全部我的数据库chroot。

相关内容