Миграция#

Миграция с помощью утилиты convert2sl#

Утилита convert2sl – это инструмент бесшовной миграции с ОС Red Hat Enterprise Linux (RHEL) на SberLinux OS Server.

Важно

Для миграции выполните следующие действия:

  1. Получите у разработчика ОС доступ к репозиториям SberLinux OS Server.

  2. Получите актуальный сертификат.

  3. Следуйте сценарию, указанному ниже.

Миграция доступна для следующих версий RHEL:

  • 9.5

  • 9.4

  • 9.3

  • 8.10

  • 8.9

  • 8.8

Предварительные условия#

Проверьте, что вместе с настоящим сценарием получены файлы репозиториев:

  • redhat-migration.repo - пример файла с подключенными репозиториями RHEL;

  • sberlinux8-online.repo - содержит репозитории для SberLinux OS Server 8-го поколения. Используйте этот файл для обновления на 8-ое поколение SberLinux OS Server;

  • sberlinux9-online.repo - содержит репозитории для SberLinux OS Server 9-го поколения. Используйте этот файл для обновления на 9-ое поколение SberLinux OS Server;

  • convert2sl8.repo - содержит репозиторий для утилиты convert2sl. Используйте этот файл для обновления на 8-ое поколение SberLinux OS Server;

  • convert2sl9.repo - содержит репозиторий для утилиты convert2sl. Используйте этот файл для обновления на 9-ое поколение SberLinux OS Server.

Сценарий#

Следующий сценарий описывает процесс обновления с использованием утилиты convert2sl.

  1. Получите актуальный сертификат sberlinux-sbertech-ru.pem и добавьте его в каталог /etc/yum.repos.d:

    openssl s_client -connect sberlinux.sbertech.ru:443 -servername sberlinux.sbertech.ru -showcerts 2>/dev/null < /dev/null | \
    sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | \
    sudo tee /etc/yum.repos.d/sberlinux-sbertech-ru.pem 
    
  2. Воспользуйтесь приложенными к настоящему сценарию файлами репозиториев sberlinux8-online.repo или sberlinux9-online.repo, convert2sl8.repo или convert2sl9.repo. Или создайте необходимые файлы самостоятельно. Для создания репозитория используйте следующие команды:

    cd /etc/yum.repos.d/
    sudo vi <name>.repo
    

    Где <name>.repo - название создаваемого репозитория.

  3. В файл <name>.repo добавьте необходимые блоки с подключаемыми репозиториями. Пример блока из файла sberlinux8-online.repo:

    [sberlinux-8-baseos-rpms]
    name=SberLinux - BaseOS sberlinux-8-for-$basearch-baseos-rpms
    baseurl=https://sberlinux.sbertech.ru/repo/8/sberlinux-8-for-$basearch-baseos-rpms
    sslcacert=/etc/yum.repos.d/sberlinux-sbertech-ru.pem
    gpgcheck=1
    enabled=0
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-SberLinux
    

    Где:

    • name — имя репозитория;

    • baseurl — ссылка на репозиторий;

    • sslcacert — ссылка на сертификат;

    • gpgcheck — проверка цифровой подписи репозитория. Значение 0 — проверка выключена;

    • enabled — состояние репозитория. Значение 0 — выключен;

    • gpgkey — ссылка на ключ для проверки цифровой подписи.

    Примечание

    Для переключения в режим вставки в текстовом редакторе vi используйте команду i, для сохранения изменений и выхода – :wq в командном режиме.

    Содержимое файла convert2sl8:

    name=Convert to SberLinux 8 Repository
    baseurl=https://sberlinux.sbertech.ru/repo/convert2sl/convert2sl-sl8-for-x86_64-rpms/
    sslcacert=/etc/yum.repos.d/sberlinux-sbertech-ru.pem
    enabled=1
    gpgcheck=0
    

    Содержимое файла convert2sl9:

    name=Convert to SberLinux 9 Repository
    baseurl=https://sberlinux.sbertech.ru/repo/convert2sl/convert2sl-sl9-for-x86_64-rpms/
    sslcacert=/etc/yum.repos.d/sberlinux-sbertech-ru.pem
    enabled=1
    gpgcheck=0
    

    Важно

    Обратите внимание, что в файле репозитория convert2sl8 или convert2sl9 обязателен параметр enabled=1, означающий, что репозиторий утилиты подключен.

  4. Проверьте, что репозитории в файле sberlinux8-online.repo или sberlinux9-online.repo отключены:

    enabled=0
    
  5. Обновите пакеты и перезагрузите ОС:

    dnf update -y
    sudo reboot
    
  6. Установите утилиту с помощью команд:

    sudo dnf update
    sudo dnf install convert2sl
    
  7. Измените в файле репозитория convert2sl параметр enabled=0 на enabled=1.

  8. Обновите ОС на sbel с помощью команды:

    sudo convert2sl --no-slsm --enablerepo=sberlinux-8-baseos-rpms --enablerepo=sberlinux-8-appstream-rpms
    

    Опция --no-slsm предусматривает использование совместно с --enablerepo.

  9. После запуска утилиты convert2sl дождитесь завершения диагностики системы и подтвердите замену пакетов:

    WARNING - ********************************************************
    WARNING - The tool allows rollback of any action until this point.
    WARNING - By continuing all further changes on the system will need to be reverted manually by the user, if necessary.
    WARNING - ********************************************************
    Continue with the system conversion? [y/n]:  y
    

    Внимание

    После подтверждения y в запросе утилиты Continue with the system conversion? [y/n]: прерывание миграции невозможно.

  10. Дождитесь завершения процедуры миграции.

  11. Перезагрузите систему:

    sudo reboot
    
  12. Проверьте, что миграция системы осуществилась успешно с помощью команд:

    uname -a
    cat /etc/os-release
    

    Пример вывода команды, свидетельствующий об успешной миграции системы:

    NAME="SberLinux"
    VERSION="8.9 (Shan)"
    ID="sberlinux"
    ID_LIKE="rhel sberlinux fedora"
    VERSION_ID="8.9"
    PLATFORM_ID="platform:el8"
    PRETTY_NAME="SberLinux 8.9 (Shan)"
    ANSI_COLOR="0;34"
    LOGO="fedora-logo-icon"
    CPE_NAME="cpe:/o:sberlinux:sberlinux:8::baseos"
    HOME_URL="https://sbertech.ru/"
    DOCUMENTATION_URL="https://sbertech.ru/"
    BUG_REPORT_URL="https://sbertech.ru/"
    SBERLINUX_MANTISBT_PROJECT="SberLinux-8"
    SBERLINUX_MANTISBT_PROJECT_VERSION="8.9"
    REDHAT_SUPPORT_PRODUCT="SberLinux"
    REDHAT_SUPPORT_PRODUCT_VERSION="8.9"
    
  13. Команда rpm -qa --qf "%{NAME}-%{VERSION}-%{RELEASE}\n" | grep "el8" показывает пакеты rhel, которые не были удалены.

    Для удаления данных пакетов вручную воспользуйтесь, например, следующей командой:

    sudo dnf remove librhsm-0.0.3-5.el8