RPM/virtualize

Материал из ALT Linux Wiki
< RPM
Версия от 19:28, 4 октября 2023; AndrewVasilyev (обсуждение | вклад) (→‎Vagrant: typo)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)

Как запустить Альт в другой системе

Для тестирования, разработки, экспериментирования может быть полезно быстро запустить Альт в контейнере или виртуальной машине. (Статья не подразумевает подробного описания всех шагов как установить соотв. систему виртуализации и как ей пользоваться для любых целей, а только краткий обзор для пользователей уже знакомых с ней / с ними.)

Docker / Podman

Официальные образы на Докерхабе https://hub.docker.com/_/alt (поддерживаются архитектуры amd64, arm32v7, arm64v8, i386, ppc64le):

$ docker run --rm -it alt:sisyphus

Однако предпочтительнее использовать официальные образы из нашего Реестра:

$ docker run --rm -it registry.altlinux.org/alt/alt:sisyphus

Для Podman команды аналогичные, только вместо docker запускается podman.

Для использования эмуляции других архитектур надо установить qemu-user и настроить для него binfmt (часто достаточно установить соответствующий пакет вроде qemu-user-binfmt).

systemd-nspawn

Должны работать облачные образы с systemd http://ftp.altlinux.org/pub/distributions/ALTLinux/images/Sisyphus/cloud/

$ machinectl pull-tar http://ftp.altlinux.org/pub/distributions/ALTLinux/images/Sisyphus/cloud/x86_64/alt-sisyphus-rootfs-systemd-x86_64.tar.xz alt
$ machinectl start alt

В образе не установлен пароль, поэтому первоначально нужно пользоваться shell. Например чтоб установить рутовый пароль для последующего login:

$ machinectl shell alt /usr/bin/passwd
Enter new password: ***
$ machinectl login alt

Vagrant

Доступны неофициальные образы Vagrant https://app.vagrantup.com/BaseALT

$ vagrant init BaseALT/alt-server-10-amd64
$ vagrant up

vml

Новейшая система для запуска облачного образа в KVM виртуализации с помощью скрипта на Rust. 📦

Предварительно установите в вашу систему (список для Федоры) cargo qemu-system-x86 cloud-utils-cloud-localds.

$ cargo install --git https://github.com/obirvalger/vml vml
$ PATH=/root/.cargo/bin:$PATH
$ vml run -N alt-sisyphus
$ vml ssh alt-sisyphus

Что сделать после успешного запуска

В Альт используется пакетный менеджер APT-RPM (интерфейс APT как в Дебиане, но пакеты в формате RPM как в Федоре). Каждый раз перед началом использования apt-get install нужно запускать apt-get update чтоб скачать актуальную информацию о состоянии репозитория.

Установка базовой сборочной среды (для разработчика):

# apt-get install rpm-build

Обновление системы:

# apt-get dist-upgrade

Обновление ядра (для контейнеров не нужно):

# update-kernel