x2openeuler. Часть 1: установка и настройка

x2openEuler: как переехать в новый дистрибутив

Давайте представим классическую ситуацию в мире ИТ: ваш верный сервер годами трудился на CentOS, как вдруг грянули громкие новости о смене жизненных циклов. Паника, поиск альтернатив и осознание, что миграция — это немыслимый объем работы по анализу совместимости. Именно в этот момент на сцене появляется x2openEuler — инструмент, который обещает превратить этот кошмар в управляемый процесс. Давайте разберемся, так ли это на самом деле.

Введение: Зачем это всё?

x2openEuler — это не просто утилита, а целый инструментарий для миграции (или, как деликатно выражаются авторы, «upgrade») с других операционных систем, прежде всего с CentOS, на openEuler. Его главная цель — спасти вас от рутины ручного анализа совместимости, которая сопряжена с кропотливым трудом, низкой точностью и плохой общей эффективностью. Проще говоря, это попытка автоматизировать ту часть работы, от которой у любого сисадмина начинают дергаться веки.

С точки зрения установки x2openEuler представляет собой классическое серверное приложение, для которого надо будет выделить сервер соответствующих характеристик (требования для его установки мы перечислим далее в статье). Управление x2openEuler осуществляется через веб-интерфейс или через плагин, подключаемый к Visual Studio Code (сразу оговоримся, что вариант с плагином в этой статье рассматриваться не будет).

По своим возможностям, x2openEuler умеет оценивать, собирать данные и выдавать отчеты, которые, как честно предупреждают разработчики, «носят исключительно справочный характер». Даже при входе в систему, после ввода имени пользователя и пароля необходимо поставить галочку дисклеймера, что вы предупреждены, что данное решение предназначено только для тестирования и не предназначено для использования в продакшн средах. То есть, если что – вас предупредили.

Возможности x2openEuler

Основная мощь x2openEuler сосредоточена в следующих ключевых функциях.

1. Оценка программного обеспечения

Это тот самый «рентген» вашего приложения. Инструмент сканирует и анализирует пакеты самых разных форматов: от привычных RPM и TAR до JAR, Python-скриптов (.py, .pyc) и бинарников (.bin). Он пытается выявить все зависимости вашего софта и генерирует наглядный отчет. Полезно? Безусловно. Волшебная палочка, решающая все проблемы? Увы, нет. Отчет — это лишь карта, а идти по ней придется вам.

2. Сбор и оценка конфигурации среды

Здесь x2openEuler проявляет себя как дотошный системный администратор. Он собирает данные об аппаратной конфигурации, параметрах ядра (`sysctl`, `proc`, `sys`), переменных окружения, запущенных сервисах, процессах, портах и даже интерфейсах системных вызовов. Вся эта информация упаковывается в JSON-файлы. Инструмент залезает в конфигурационные файлы: `/boot/grub2/grub.cfg`, `/etc/fstab`, `/etc/sysctl.conf` и другие критичные файлы. Важный момент: для этого ему требуются повышенные привилегии, что разработчики скрупулезно перечисляют в разделе Disclaimer. Так что, запуская его, вы по сути говорите системе: «Доверяю, но проверять буду потом».

3. Аппаратная оценка (Hardware Assessment)

Проверка железа — это отдельный сыр-бор. x2openEuler сверяет, находится ли вся система (архитектуры x86 или AArch64) и установленные платы расширения (RAID, сетевые карты, GPU и т.д.) в списке совместимости openEuler. Для серверного мира, где замена железных компонентов может влететь в копеечку, эта функция бесценна. Лучше узнать о потенциальных проблемах до миграции, чем после.

4. Миграция конфигурации системы

Эта функция предназначена для миграции настроек с исходного сервера на базе устаревшей ОС на целевой (уже развёрнутый в сети) сервер с актуальной ОС.

5. Миграция ОС

Функция OS Upgrade в x2openEuler — это ваш личный прораб для переезда со старой ОС (вроде CentOS 7) на openEuler, который превращает хаотичный кошмар в управляемый процесс. Он не просто копирует файлы, а проводит детальную инвентаризацию вашей системы, сверяет каждую зависимость и конфиг с новым дистрибутивом и генерирует пошаговый план переезда, честно указывая, какие пакеты перенесутся легко, какие потребуют ручной возни, а с какими придётся просто попрощаться. По сути, инструмент автоматизирует всю черновую работу — от перенастройки репозиториев до обновления ядра, — но при этом настойчиво напоминает, что запускать его в боевой среде равносильно играть в русскую рулетку с продакшеном, а за кастомные скрипты и финальное тестирование ответственность несёте только вы, как системный администратор этой системы. Это максимально полезная «шпаргалка» для миграции, но никак не волшебная кнопка.

Установка x2openeuler

x2openeuler представляет из себя классическое серверное приложение, для установки которого необходимо выделить отдельный сервер. Требования для установки небольшие: 4 ядра (2.5 GHz или выше) (желательно 8 ядер), не менее 16Гб ОП, дискового пространства не менее 20Гб.

Итак, мы решились, подготовили сервер и хотим уже развернуть и попробовать эту чудо-систему. Где его взять?

Тут есть нюанс, так как x2openeuler не входит в базовый репозиторий openEuler, а доступен для скачивания как отдельный продукт по ссылке (https://www.openeuler.org/en/migration/download/). Когда мы откроем эту страницу мы увидим:

Рисунок 1.1. Страница для скачиваний.

И на этой странице последней версией будет версия датированная 30 сентября 2024 года. Но если пройти по ссылке и открыть весь каталог (https://repo.oepkgs.net/openEuler/rpm/openEuler-20.03-LTS-SP1/contrib/x2openEuler/x86_64/Packages/), то мы увидим, что есть версия и посвежее (x2openEuler-core-3.0.0-20250422.x86_64.rpm). Почему на февраль 2026 года страница со ссылками на скачивание до сих пор не обновлена ответа у меня нет. Но сразу оговорюсь, что если поставить версию от 30.09.2024, то у вас не будет работать (по-крайней мере у меня не работало) сбор информации с узла для анализа процесса миграции.

Ещё немного ворчания:

Так же прошу заметить, что до сих пор публикация новых версий x2openeuler идёт в этот каталог, а он относится к выпуску openEuler 20.03 LTS SP1, а это, на минуточку, 2020 год! Ещё одна не совсем очевидная вещь (поскольку она не упоминается в инструкции по установке, а вы можете прочитать про неё только в отдельном разделе документации «common operation» – это установка дополнительных пакетов с описаниями ОС. Для операций по оценке ПО и миграции конфигурации необходимо устанавливать дополнительные пакеты для каждой версии ОС (с которой и на какую мигрируем, а также пакет «пары этих ОС». К примеру, нам надо выполнить оценку ПО для миграции с centos 7.3 на openEuler 22.03 LTS. Вам понадобится установить в систему пакеты:

  • x2openEuler-database-centos7.3-openEuler22.03-LTS-2.0.0.630-1.noarch.rpm — пакет «пара»
  • x2openEuler-database-centos7.3-2.0.0.630-1.noarch.rpm — описание centos 7.3
  • x2openEuler-database-openEuler22.03-LTS-2.0.0.630-1.noarch.rpm — описание openEuler 22.03

По мере выхода новых версий openEuler в репозитории https://repo.oepkgs.net/openEuler/rpm (к сожалению, не для всех вышедших версий) выкладывают обновлённые пакеты x2openeuler database с обновлённой версией openEuler. Если вы захотите выполнить миграцию с какой-то старой версии CentOS — сначала проверьте, есть ли в этом репозитории нужные пакеты, описывающий вашу версию centos, новую версию openEuler и самое главное пакет, описывающий «пару».

Скриншоты установки я снимал для версии от 30.09.2024, а вам я порекомендую сразу ставить более позднюю версию.

Итак, мы будем ставить x2openeuler на сервер с указанными характеристиками под управлением openEuler 24.03 LTS SP2.

Отключаем SELinux (сразу оговорюсь, что я понимаю, что отключать SELinux в 2026 году уже не приветствуется, но будем следовать рекомендациям от разработчиков). Редактируем файл “/etc/selinux/config”, перезагружаем систему и убеждаемся:

Рисунок 1.2. Отключение SELinux.

Производим скачивание и установку x2openeuer:

Рисунок 1.3. Скачивание пакета.

Рисунок 1.4. Установка x2openeuler

После установки необходимо выполнить настройку и инициализировать сервис, для этого нам надо перейти в каталог /usr/local/x2openEuler/portal/service и запустить скрипт service_init.sh.

Для наглядности приведу полный лог работы этого скрипта:

Рисунок 1.5. Настройка x2openeuler

В конце настройки скрипт сообщит URL адрес веб-итерфейса x2openeuler, куда нам следует зайти для продолжения работы.

Заходим и настраиваем пароль администратора:

Рисунок 1.6. Настройка пароля администратора x2openeuler

Всё! Теперь мы можем зайти используя этот пароль внутрь системы, предварительно поставив обязательную галочку, что нас предупредили, что ответственность за всё исключительно на нас.

Рисунок 1.7. Вход в систему x2openeuler

Нас встречает следующий дашборд:

Рисунок 1.8. Dashboard x2openeuler

Тут, как мы видим, единственная функциональная кнопка это «new task». Помимо неё, мы можем нажать шестерёнку и попасть в раздел настроек системы:

Рисунок 1.9. Настройки x2openeuler

Как мы видим, система поддерживает многопользовательский режим, но для демонстрации возможностей нам хватит единственного пользователя — администратора системы.

На сегодня всё 🙂

На данном этапе система установлена и её можно использовать по её прямому назначению. Вот об этом «прямом назначении» мы и поговорим в наших следующих статьях о x2openeuler.

В них мы рассмотрим как можно использовать этот инструмент для обновления устаревших ОС до актуальной версии openEuler, как получать отчёты по ОС установленной на вашем сервере с целью оценки успешности её обновления, а также как можно оценить имеющееся у вас программное обеспечение на предмет успеха установки его на новой версии ОС.

Ждите следующих частей!