如何为debootstrap添加更多变体或自定义包?
我有一组包,我希望在debootstrap中安装minibase变种。 我正在努力确定如何自定义变体,以便在运行debootstrap时不仅仅在chroot中安装基础。 有没有办法实现这个目标?
将自己的变体与其他自定义包添加到debootstrap非常容易。
debootstrap配置/运行时脚本位于/usr/share/debootstrap/scripts
。 让我们创建一个allmybase
变体,它包含minbase
所有minbase
以及htop
和traceroute
包。
-
在编辑器中打开
/usr/share/debootstrap/scripts/precise
。- 请注意,这与许多Ubuntu版本一起,是
/usr/share/debootstrap/scripts/gutsy
的符号链接; 如果您只想影响特定版本,请断开链接并将其作为gutsy脚本的副本。
- 请注意,这与许多Ubuntu版本一起,是
-
在第22行附近,找到以
variants
开头的行,并在最后添加自定义变体:变种 - 构建的fakechroot minbase allmybase
-
在第34行找到
work_out_debs()
函数,并查看“base”变量(此处为minbase
)的base
变量的默认设置:elif doing_variant fakechroot || do_variant minbase; 然后 基=“易于”
-
在函数末尾添加自定义包的自定义包:
elif doing_variant allmybase; 然后 base =“apt htop traceroute”
-
使用
--print-debs
“simulation”标志保存,退出并测试它,例如sudo debootstrap --print-debs --variant = allmybase precise / tmp / prec-chroot
- 在此示例中,输出将显示
htop
和traceroute
包将包含在allmybase chroot中。
- 在此示例中,输出将显示