У меня есть набор пакетов, которые я хочу установить вместе с вариантом минибазы в debootstrap. Мне сложнее всего разобраться, как настроить варианты, чтобы при запуске debootstrap в chroot устанавливалось не только база. Есть ли способ достичь этого?
Довольно просто добавить свой вариант с дополнительными пользовательскими пакетами в debootstrap .
Скрипты конфигурации / времени выполнения debootstrap находятся в /usr/share/debootstrap/scripts
. Давайте создадим вариант allmybase
, который включает все в minbase
вместе с пакетами htop
и traceroute
.
Откройте /usr/share/debootstrap/scripts/precise
в вашем редакторе.
/usr/share/debootstrap/scripts/gutsy
; если вы хотите повлиять только на конкретный выпуск, разорвите ссылку и сделайте вместо этого копию сценария gutsy . Вокруг строки 22 найдите строку, начинающуюся с variants
, и добавьте свой собственный вариант в конце:
variants - buildd fakechroot minbase allmybase
Найдите Функция work_out_debs()
работает вокруг строки 34 и ищет настройки по умолчанию для переменной base
для вашего «базового» варианта (здесь minbase
):
elif doing_variant fakechroot || doing_variant minbase; then base="apt"
Добавить Ваш собственный вариант с пользовательскими пакетами в конце функции:
elif doing_variant allmybase; then base="apt htop traceroute"
Сохраните, выйдите и протестируйте его с флагом --print-debs
«симуляция», например,
sudo debootstrap --print-debs --variant=allmybase precise /tmp/prec-chroot
htop
и traceroute
будут включены в chroot allmybase .