"официальный" способ, который используется в родных хуках, через которые
создается инитрд - функция copy_exec из 
/usr/share/initramfs-tools/hook-functions
принцип нехитрый - копирует сам бинарь, потом парсит вывод ldd для него, ищет
нужные либо по всем углам и копирует их тоже.
примеры использования есть во многих хуках, да почти во всех, наверно.
в общем, в initramfs-tools есть дофига всего, чтобы обойтись без всяких танцев
с debootstrap и прочими ужасами))


2017-030 22:50 Alexander Galanin <a...@galanin.nnov.ru> wrote:
> Добрый вечер, d-r!
> 
> Недавно понадобилось собрать нестандартный initramfs, в котором нужна
> команда mkfs помимо шелла и модулей. Скачал и распаковал udeb-пакеты для
> e2fsprogs, busybox и их зависимости. В общем-то проблему решил, но
> захотелось узнать, как решать проблему разбора зависимостей и скачивания
> пакетов автоматически.
> 
> Пробовал debootstrap и multistrap. В обычном режиме они ставят слишком
> много (первый - ставит все пакеты для базовой системы, второй - по
> зависимостям вытянул даже sysv-rc).
> 
> Попробовал заставить *-strap-ы скачивать udeb-пакеты. Для debootstrap
> не смог найти подходящего ключика. Нашёл, как сделать это для multistrap
> (components=main/debian-installer). Однако multistrap только разобрал
> зависимости и скачал пакеты, но установить он их не смог. Судя по
> исходникам, он привязывается к тому, что имя файла пакета оканчивается
> на .deb.
> 
> Есть ли какой-нибудь ещё способ автоматически разобрать зависимости,
> скачать и распаковать udeb-пакеты? Или даже так: собираете ли вы
> initramfs автоматически, и если да, то как вы это делаете?
> 

Ответить