URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 138767
[ Назад ]

Исходное сообщение
"Раздел полезных советов: Создание загрузочного атомарно обновляемого образа Oracle Linux при помощи OSTree"

Отправлено auto_tips , 24-Дек-25 10:11 
Использование инструментария [[https://ostreedev.github.io/ostree/ OSTree]] для сборки из Oracle Linux загрузочных образов, обновляемых атомарно без разделения на отдельные пакеты.

Устанавливаем ostree и rpm-ostree

   dnf install -y ostree rpm-ostree

Создаём рабочий каталог ~/ostree-test и инициализируем ostree-репозиторий:

   mkdir $HOME/ostree-test
   cd $HOME/ostree-test
   ostree --repo=$(pwd) init

Формируем в каталоге ~/ostree-test начинку репозитория

    sudo dnf install --installroot=$(pwd) --releasever=9 oraclelinux-release rpm-ostree bash coreutils kernel-uek-core grub2-efi-x64 -y
  
Добавляем созданную начинку в репозиторий ostree:

    ostree --repo=$(pwd) commit -b my_ostree_test --tree=dir=$(pwd) --subject="My first ostree OL9 commit"

[[https://ostreedev.github.io/ostree/man/ostree-summary.html Перегенерируем]] сводный файл с метаданными:

   ostree --repo=$(pwd) summary --update

Извлекаем корневую ФС из внешнего репозитория ostree-test, используя промежуточный локальный репозиторий ostree-test-remote:

   cd $HOME
   mkdir ostree-test-remote
   cd ostree-test-remote
   sudo ostree --repo=$(pwd) init
   sudo ostree --repo=$(pwd) remote add ol-local file:///$HOME/ostree-test --no-gpg-verify
   sudo ostree --repo=$(pwd) remote refs ol-local # выдаст ветку ol-local:my_ostree_test


Извлекаем файлы для проверки содержимого корневой ФС

   sudo ostree --repo=$(pwd) pull ol-local my_ostree_test
   sudo ostree --repo=$(pwd) checkout my_ostree_test newroot

   ls newroot

   afs   config  extensions  lib64  objects  refs  sbin   sys  var
   bin   dev     home        media  opt      root  srv    tmp
   boot  etc     lib         mnt    proc     run   state  usr

Активируем загрузочную файловую систему и перезагружаемся в неё:

  sudo rpm-ostree rebase ol-local:my_ostree_test
  sudo systemctl reboot

Для установки дополнительных rpm-пакетов поверх созданного окружения можно использовать команду "rpm-ostree install имя_пакета".

URL: https://blogs.oracle.com/linux/immutable-images-for-oracle-l...
Обсуждается: https://www.opennet.ru/tips/info/3280.shtml


Содержание

Сообщения в этом обсуждении
"Создание загрузочного атомарно обновляемого образа Oracle Linux при помощи OSTree"
Отправлено Аноним , 24-Дек-25 10:11 
А почему рабочая папка и ostree-репа находятся по одному пути? Разве это best practices? В итоге {bin,etc,usr}... мешаются с {objects,refs,config}... И я не уверен, не попадет ли таким образом например config прямо в состав репозитория. Это примерно как в гите умудриться закоммитить .git.