::: {#ht-loader} This content cannot be displayed without JavaScript.
Please enable JavaScript and reload the page. :::

::::::::: {#ht-headerbar} ::: ht-headerbar-left [](){#ht-menu-toggle .sp-aui-icon-small .sp-aui-iconfont-appswitcher} ::: ::::::: ht-headerbar-right ::: {.sp-aui-icon-small .ht-search-index-loader .ht-header-icon} ::: ::::: {#ht-search} :::: {.ht-search-input style="display: none;"} [](#){.sp-aui-icon-small .sp-aui-iconfont-remove .ht-search-clear} [![](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDBweCIgaGVpZ2h0PSI0MHB4IiB2aWV3Ym94PSIwIDAgNDAgNDAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICAgICAgICAgICAgICAgICAgICAgIDxnPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTI5LjU3MiwyOC44MDIgTDI4LjgwMSwyOS41NzEgQzI4LjUxNSwyOS44NTcgMjguMTg3LDMwIDI3LjgxNiwzMCBDMjcuNDQ1LDMwIDI3LjExNiwyOS44NTcgMjYuODMxLDI5LjU3MSBMMjEuMzkyLDI0LjEzNCBDMjAuMTkzLDI0Ljc2MiAxOC45MDgsMjUuMDc2IDE3LjUzOCwyNS4wNzYgQzE1LjM5NiwyNS4wNzYgMTMuNjA1LDI0LjM0OCAxMi4xNjMsMjIuODkyIEMxMC43MjEsMjEuNDM2IDEwLDE5LjY1MSAxMCwxNy41MzggQzEwLDE1LjM5NyAxMC43MjEsMTMuNjA1IDEyLjE2MywxMi4xNjMgQzEzLjYwNSwxMC43MjEgMTUuMzk2LDEwIDE3LjUzOCwxMCBDMTkuNjUxLDEwIDIxLjQzNCwxMC43MjEgMjIuODksMTIuMTYzIEMyNC4zNDcsMTMuNjA1IDI1LjA3NSwxNS4zOTcgMjUuMDc1LDE3LjUzOCBDMjUuMDc1LDE4LjkzNyAyNC43NjEsMjAuMjIyIDI0LjEzMiwyMS4zOTMgTDI5LjU3MiwyNi44MzIgQzI5Ljg1NywyNy4xMTggMzAsMjcuNDQ2IDMwLDI3LjgxNyBDMzAsMjguMTg4IDI5Ljg1NywyOC41MTcgMjkuNTcyLDI4LjgwMiBMMjkuNTcyLDI4LjgwMiBaIE0xMy42NjIsMjEuNDE0IEMxNC43MzIsMjIuNDg1IDE2LjAyNCwyMy4wMiAxNy41MzgsMjMuMDIgQzE5LjA1MSwyMy4wMiAyMC4zNDMsMjIuNDg1IDIxLjQxMywyMS40MTQgQzIyLjQ4NCwyMC4zNDQgMjMuMDE5LDE5LjA1MiAyMy4wMTksMTcuNTM4IEMyMy4wMTksMTYuMDI1IDIyLjQ4NCwxNC43MzMgMjEuNDEzLDEzLjY2MiBDMjAuMzQzLDEyLjU5MiAxOS4wNTEsMTIuMDU2IDE3LjUzOCwxMi4wNTYgQzE2LjAyNCwxMi4wNTYgMTQuNzMyLDEyLjU5MiAxMy42NjIsMTMuNjYyIEMxMi41OTEsMTQuNzMzIDEyLjA1NiwxNi4wMjUgMTIuMDU2LDE3LjUzOCBDMTIuMDU2LDE5LjA1MiAxMi41OTEsMjAuMzQ0IDEzLjY2MiwyMS40MTQgTDEzLjY2MiwyMS40MTQgWiIgLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICAgICAgICAgIDwvc3ZnPg==)](#){#ht-search-button .ht-header-icon .ht-header-icon-svg} ::: {.ht-search-dropdown .ht-dropdown} ::: :::: ::::: ::::::: ::::::::: ::::: ht-sidebar-content :::: ht-sidebar-content-scroll-container ::: ht-sidebar-header # [ALT]{.ht-logo-label} ![](/qemu_mkimage/default-space-logo.svg){.space-logo} {#alt .ht-logo} [](%D0%A1%D0%B1%D0%BE%D1%80%D0%BA%D0%B0_qemu_aarch64_%D0%B8%D0%B7_%D0%B8%D1%81%D1%85%D0%BE%D0%B4%D0%BD%D0%B8%D0%BA%D0%BE%D0%B2_%D0%BF%D0%BE%D0%B4_ALT_Linux..html){.ht-space-link} ## Альтэл ::: :::: :::::

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: {#ht-wrap-container} :::: {#ht-sidebar-dragbar} ::: ht-sidebar-drag-handle []{.drag-handle-1} []{.drag-handle-2} []{.drag-handle-3} ::: ::::

:::: ht-content-header ::: {#ht-breadcrumb}

mkimage-profile под qemu-aarch64, MCom-03 (СКИФ) ALT Linux

::::

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: {#main-content .wiki-content .sp-grid-section index-for-search=”true”} \

:::::::::::::::::::::::::: {.confbox .programlisting style=”counter-reset: scroll-code-numbering 1”} ::: title Первое вхождение в chroot окружение. Руководство по настройке. :::

:::::::::::::::::::::::: {.fadetogrey .syntaxhighlighter .scroll-html-formatted-code xmlns=”http://www.w3.org/1999/xhtml” data-title=”Первое вхождение в chroot окружение. Руководство по настройке.” linenumbers=”false” firstline=”1”} ::: line # При вхождении в chroot окружение у Вас права администратора (root) {.plain} :::

::: line   :::

::: line # Deafault репозиторий - /etc/apt/sources.list.d/local.list{.plain} :::

::: line   :::

::: line # Обновление пакетов{.plain} :::

::: line apt-get update{.plain} :::

::: line   :::

::: line # Установка пакетов необходимых для mkimage-profile{.plain} :::

::: line apt-get install -y mkimage{.plain} :::

::: line apt-get install -y mkimage-preinstall{.plain} :::

::: line apt-get install -y hasher{.plain} :::

::: line apt-get install -y git-core{.plain} :::

::: line   :::

::: line # Добавьте уже существующего пользователя elvees{.plain} :::

::: line hasher-useradd elvees{.plain} :::

::: line   :::

::: line # Добавить строку: allowed_mountpoints=/proc{.plain} :::

::: line echo {.plain}"allowed_mountpoints=/proc"{.string} | tee -a /etc/hasher-priv/system{.plain} :::

::: line   :::

::: line # Переход в elvees account (пароль- elvees, root пароль - elvees){.plain} :::

::: line su - elvees{.plain} ::: :::::::::::::::::::::::: ::::::::::::::::::::::::::

::::::::::::::::::::::::::::::::::::::::: {.confbox .programlisting style=”counter-reset: scroll-code-numbering 1”} ::: title ... продолжение. Настройка mkimage-profiles под пользователем elvees :::

::::::::::::::::::::::::::::::::::::::: {.fadetogrey .syntaxhighlighter .scroll-html-formatted-code xmlns=”http://www.w3.org/1999/xhtml” data-title=”… продолжение. Настройка mkimage-profiles под пользователем elvees” linenumbers=”false” firstline=”1”} ::: line # создание рабочих директорий{.plain} :::

::: line mkdir -p ~/out ~/tmp ~/hasher ~/build ~/wrk{.plain} :::

::: line   :::

::: line export TMPDIR=~/tmp{.plain} :::

::: line echo {.plain}"export TMPDIR=~/tmp"{.string} | tee -a ~/.bashrc{.plain} :::

::: line   :::

::: line export BUILDDIR=~/build{.plain} :::

::: line echo {.plain}"export BUILDDIR=~/build"{.string} | tee -a ~/.bashrc{.plain} :::

::: line   :::

::: line export DEBUG={.plain}2{.value} :::

::: line echo {.plain}"export DEBUG=2"{.string} | tee -a ~/.bashrc{.plain} :::

::: line   :::

::: line cd wrk{.plain} :::

::: line   :::

::: line # клонирование локального репозитория mkimage-profiles{.plain} :::

::: line git clone https:{.plain}//git.elvees.com/altel-basic/mkimage-profiles{.comments} :::

::: line   :::

::: line cd mkimage-profiles{.plain} :::

::: line   :::

::: line # лист целевых сборок{.plain} :::

::: line make help/distro{.plain} :::

::: line   :::

::: line # тестовая сборка{.plain} :::

::: line make grub.iso{.plain} :::

::: line   :::

::: line # боевая сборка{.plain} :::

::: line make regular-jeos-systemd.iso{.plain} :::

::: line ** goal: regular-jeos-systemd.iso{.plain} :::

::: line ** BRANCH/ARCH: p10/aarch64{.plain} :::

::: line 20{.value}:{.plain}59{.value}:{.plain}30{.value} cleaning up{.plain} :::

::: line 20{.value}:{.plain}59{.value}:{.plain}45{.value} initializing BUILDDIR: build/{.plain} :::

::: line 20{.value}:{.plain}59{.value}:{.plain}47{.value} preparing distro config: build/distcfg.mk{.plain} :::

::: line 21{.value}:{.plain}02{.value}:{.plain}49{.value} starting image build: tail -f build/build.log{.plain} :::

::: line 21{.value}:{.plain}52{.value}:{.plain}46{.value} done ({.plain}49{.value}:{.plain}57{.value}){.plain} :::

::: line ** image: ~/out/alt-p10-jeos-systemd-{.plain}20250723{.value}-aarch64.iso [{.plain}1{.value}.2G]{.plain} :::

::: line # Победа!{.plain} ::: ::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::::::::::

::::::::::::::: {.confbox .programlisting style=”counter-reset: scroll-code-numbering 1”} ::: title Пример повторного входа в систему и сборки произвольного дистрибутива :::

::::::::::::: {.fadetogrey .syntaxhighlighter .scroll-html-formatted-code xmlns=”http://www.w3.org/1999/xhtml” data-title=”Пример повторного входа в систему и сборки произвольного дистрибутива” linenumbers=”false” firstline=”1”} ::: line ssh user{.plain}@10{.color1}.113.{.plain}10.114{.value} :::

::: line Password:{.plain} :::

::: line [user{.plain}@emgfmt7tp4lue{.color1} ~]$ su{.plain} :::

::: line Password:{.plain} :::

::: line [root{.plain}@emgfmt7tp4lue{.color1} ~]# altch{.plain} :::

::: line (chroot)root:/${.plain} :::

::: line (chroot)root:/$su - elvees{.plain} :::

::: line [elvees{.plain}@emgfmt7tp4lue{.color1} ~]$cd wrk/mkimage-profiles/{.plain} :::

::: line [elvees{.plain}@emgfmt7tp4lue{.color1} mkimage-profiles]$make help/distro{.plain} :::

::: line [elvees{.plain}@emgfmt7tp4lue{.color1} mkimage-profiles]$make regular-mate.iso{.plain} ::: ::::::::::::: :::::::::::::::

В дальнейшем можно улучшать и расширять chroot окружение, как обычную операционную систему:

Benchmarks:

  • Нативная сборка: OS altlinux p10, x86_64. alt-p10-jeos-systemd-latest-x86_64.tar - ~7min

  • QEMUшная сборка: СКИФ ALT Linux, qemu-aarch64, alt-p10-jeos-systemd-20250723-aarch64.iso - 50 min

Приложение:


:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Сборка qemu aarch64 из исходников под ALT Linux.{.ht-post-nav-prev} Решение проблемы с gpg подписью base/release{.ht-post-nav-next}

{#ht-jump-top .sp-aui-icon-small .sp-aui-iconfont-arrows-up} ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

::: {#ht-mq-detect} :::