我有一组软件包,希望与debootstrap中的minibase变量一起安装。我最费力的是弄清楚如何自定义变体,以便在运行debootstrap时,在chroot中安装的不仅仅是基础。有什么办法可以做到这一点?
我有一组软件包,希望与debootstrap中的minibase变量一起安装。我最费力的是弄清楚如何自定义变体,以便在运行debootstrap时,在chroot中安装的不仅仅是基础。有什么办法可以做到这一点?
Answers:
在debootstrap中添加带有其他自定义软件包的自定义变量非常容易。
该debootstrap的配置/运行脚本位于/usr/share/debootstrap/scripts
。让我们创建一个allmybase
变体,其中包含minbase
与包htop
和一起的所有内容traceroute
。
/usr/share/debootstrap/scripts/precise
在编辑器中打开。
/usr/share/debootstrap/scripts/gutsy
; 的符号链接。如果您只想影响特定的发行版,请断开链接,并使其成为gutsy脚本的副本。在第22行附近,找到以开头的行,variants
并在末尾添加您的自定义变体:
变体-内置fakechroot minbase allmybase
找到第work_out_debs()
34行附近的函数,并查看base
“基本”变体(此处为)的变量的默认设置minbase
:
Elif _doing_variant fakechroot || 最小变量 然后 base =“ apt”
在函数的末尾添加带有自定义包的自己的变体:
埃尔夫 然后 base =“ apt htop traceroute”
保存,退出并使用--print-debs
“ simulation”标志进行测试,例如
sudo debootstrap --print-debs --variant = allmybase精确/ tmp / prec-chroot
htop
和traceroute
软件包将包含在allmybase chroot中。debootstrap --include=htop,traceroute
无需对debootstrap脚本进行任何修改就可以实现相同的效果。