Что такое debootstrap - второй этап для
Я просто играл с debootstrap
а также schroot
, Я настраиваю свою среду с debootstrap
, Я не пользуюсь --second-stage
вариант debootstrap
,
Когда и как мне нужно использовать эту опцию. Что значит debootstrap
делать на втором этапе?
2 ответа
Разделение двух этапов необходимо только в том случае, если вы загружаете дистрибутив для сторонней архитектуры ( CrossDebootstrap). Смотри описание --foreign
вариант на странице руководства. Например, используя машину x86 для создания установки Debian/Ubuntu для встроенной системы ARM или PowerPC.
На первом этапе загружаются необходимые файлы.deb и распаковывается в указанный вами каталог. На втором этапе запускаются все сценарии конфигурации пакета, которые должны быть выполнены с использованием целевой архитектуры (или с помощью qemu-user-static
подражать целевой архитектуре).
Если вы не создаете установку для сторонней архитектуры, этапы объединяются, и вы можете игнорировать --second-stage
вариант.
Пример использованияdebootstrap --second-stage
Если вы хотите отменить загрузку образа Ubuntu 18.04 arm64 с хоста Ubuntu 18.04 amd64, вы должны сделать:
sudo apt-get install \
debootstrap \
qemu-user-static \
;
debootstrap_dir=debootstrap
sudo debootstrap \
--arch arm64 \
--foreign \
bionic \
"$debootstrap_dir" \
http://ports.ubuntu.com/ubuntu-ports \
;
sudo mkdir -p "${debootstrap_dir}/usr/bin"
sudo cp "$(which qemu-aarch64-static)" "${debootstrap_dir}/usr/bin"
sudo chroot "$debootstrap_dir" /debootstrap/debootstrap --second-stage
sudo rm -f "$root_filesystem"
qemu-user-static
пакет в Ubuntu 18.04 также поставляется с qemu-debootstrap
скрипт, который делает в основном то же самое, что и мы, но распространяется на все арки. Однако его нет в главном дереве QEMU.
Вот мои полные настройки для запуска сгенерированной системы с полной эмуляцией системы QEMU: Есть ли какой-нибудь готовый образ QEMU Ubuntu (32-битный) онлайн?
Проверено на Ubuntu 18.04.