Debootstrap — это первый шаг в ручной установке Debian и при подготовке линукс-контейнера на основе Debian или Ubuntu. Благодаря ему в пустом каталоге зарождается жизнь.
Чтобы не повторять одно и то же в трёх местах, я вынес этот шаг в отдельный пост.
Утилита Debootstrap устанавливается из одноимённого пакета. Он точно есть в Debian, Ubuntu, Archlinux и Gentoo. Наверняка есть и в других дистрибутивах. В конце концов это всего лишь набор shell-скриптов.
Не обязательно, но очень желательно иметь дебиановские gpg-ключи, чтобы debootstrap мог проверить аутентичность устанавливаемых deb-пакетов. В Archlinux эти ключи можно установить из AUR: debian-archive-keyring
и ubuntu-keyring
.
Если нет возможности получить gpg-ключи с помощью пакетного менеджера, то придётся вручную выковырять их из deb-пакета. Для этого ищем нужный пакет на packages.debian.org и скачиваем в какую-нибудь временную директорию. Прямые ссылки: debian-archive-keyring, ubuntu-archive-keyring, kali-archive-keyring.
Распаковка:
$ ar vx package.deb && tar xf data.tar.[gx]z
Файл с ключами запрятан в usr/share/keyrings
, лучше переложить его в более подходящее место.
Ключи и аргументы запуска
По умолчанию debootstrap разворачивает систему такой же архитектуры, как у вашего хоста. Если нужна другая архитектура, понадобится ключ --arch
, например --arch=i386
.
Если gpg-ключ репозитория лежит не там, где ожидает debootstrap, то необходимо указать путь вручную: --keyring=/path/to/keyring.gpg
.
Спортсмены могут добавить ключ --variant=minbase
. Также может оказаться полезным ключ --print-debs
. Подробнее см. debootstrap --help
или man debootstrap
.
Первый аргумент команды — релиз Debian или Ubuntu. Второй аргумент — каталог, в который debootstrap будет разворачивать пакеты — корень будущей ОС.
Различные версии Debian:
# debootstrap stable ./debian-stable http://mirror.yandex.ru/debian
# debootstrap squeeze ./squeeze http://archive.debian.org/debian
# debootstrap wheezy ./wheezy http://mirror.yandex.ru/debian
# debootstrap jessie ./jessie http://mirror.yandex.ru/debian
Различные версии Ubuntu:
# debootstrap precise ./precise http://mirror.yandex.ru/ubuntu
# debootstrap trusty ./trusty http://mirror.yandex.ru/ubuntu
# debootstrap xenial ./xenial http://mirror.yandex.ru/ubuntu
Различные версии Kali Linux:
# debootstrap kali-rolling ./kali-rolling http://archive.kali.org/kali
# debootstrap sana ./kali-sana http://old.kali.org/kali
В моём случае система развёрнута в ./jessie
.
Проверяем архитектуру:
# chroot jessie dpkg --print-architecture
или
# systemd-nspawn -D jessie dpkg --print-architecture